创建表
CREATE TABLE table_name(
field1 datatype,
field2 datatype,
field3 datatype
) character set 字符集 collate 校验规则 engine 存储引擎;
- field 表示列名
- datatype 表示列的类型
- character set 字符集,如果没有指定字符集,则以所在数据库的字符集为准
- collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准
案例
create table users(
id int,
name varchar(20) comment '用户名',
password char(32) comment '密码是32位的md5值',
birthday date comment'生日'
) character set utf8 engine MyISAM;
说明
- 不同的存储引擎,创建表的文件不一样。
users
存储引擎是MyISAM
,在数据目录中有三个不同的文件,分别是: - usesr.frm:表结构
- users.MYD:表数据
- users.MYI:表索引
查看数据库中的表
show tables;
查看表结构
desc 表名;
修改表
在项目实际开发中,经常修改某个表的结构,比如字段名字,字段大小,字段类型,表的字符集类型,表的存储引擎等。还有需求,添加字段,删除字段等等。
ALTER TABLE tablename ADD (column datatype [DEFAULT expr][,column datatype]...);
ALTER TABLE tablename MODIFY (column datatype [DEFAULT expr][,column datatype]...);
ALTER TABLE tablename DROP (column);
案例
- 在users表添加2条记录
insert into users values(1, 'a', 'b', '1982-01-04'), (2, 'b', 'c', '1984-01-04');
- 在users表添加一个字段,用于保存图片路径
alter table users add assets varchar(100) comment '图片路径' after birthday;
- 修改name,将其长度改成60
alter table users modify name varchar(60);
- 删除password列
删除字段一定要小心,删除字段及其对应的列数据都没了
alter table users drop password;
- 修改表名为employee
alter table users rename to emplyee;
to可以省掉
6. 将name列修改为xingming
alter table employee change name xingming varchar(60); 新字段需要完整定义
7. 删除表中数据
delete from tb where; 删除指定行
delete from tb; 删除表中所有数据
truncate [table] tb; 删除表中所有数据
- 修改表中数据
UPDATE <表名> SET字段1=值1 [,字段2=值2][WHERE][ORDER BY][LIMIT];
删除表
DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name]...
示例
drop table t1;