建表及简单操作

SQL:结构化查询语言(Structured Query Language) 属于lamp/lnmp中的m(MySQL)


创建数据库

1.创建数据库,设置utf8支持中文

1
create database 数据库名 default character set utf8;

ps:我在这里又上了一次当,这里其实只有一句话,建表和设置字符集是同一句话,因为我分开了写,所以老是报错,设置不了中文支持。 :)


2.查询所有的已经存在的数据库

1
show databases;

数据表

1.进入数据库

1
use 数据库名;

2.创建表

1
2
3
4
5
6
create table if not exists 表名(
列名 数据类型 primary key,
列名 数据类型,
.....
列名 数据类型
);

需要注意的事项:
自增长可以自动在主键生成有序列表 在primary key后加 auto_increment

主键 primary key 必须唯一,一个表只有一个主键。
列名(不能是关键字 必须是英文)
表名不能有连字符-,只能使用 字母加下划线这种

3.查询所有已经存在的表

1
show tables;

4.给表中写入数据

1
insert into 表名(列名,列名,....,列名) values(值,值....值);

5.查询表中所有的数据

1
select * from 表名;

到这里数据表已经建好了,接下来就是对数据的修改了,修改之前先备份

修改数据库

1.修改之前先备份表数据(很重要)

1
create table 数据表名_bak as select * from 表名;

2.添加列或者备用列

1
2
alter table 表名 add 列名 列名的数据类型;
alter table 表名 add bak 列名的数据类型;

3.添加状态列,可以配合条件查询来显示不需要的数据

1
alter table 表名 status char

4.加列类型的长度

1
ater table 表名 modify column 列名 类型;

5.配合条件语句的查找,修改指定的一条数据

1
update 表名 set 列名=值,列名=值,.... 列名=值 where 主键=值

6.删除整条数据

1
delete from 表名 where 列名=值/主键=值

7.显示中文表名

1
select 列名 替换的中文名,列名 替换的中文名 from 表名;

8.条件查询

1
select * from 表名 where  列名=值

自增长
1.有上限 在主键后添加 auto_increment
2.无上限 select uuid