创建表
语法
CREATE TABLE table_name ( field1 datatype, field2 datatype, field3 datatype ) character set 字符集 collate 校验规则 engine 存储引擎;
说明:
- field 表示列名
- datatype 表示列的类型
- character set 字符集,如果没有指定字符集,则以所在数据库的字符集为准
- collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准
这里跟我们学习C/C++部分不同的是 数据库是先有变量名再有变量类型
此外最后的字符集 字符集校验规则还有存储引擎在我们设置好配置文件之后都是不用再重复重写的
创建表案例
create table users ( id int, name varchar(20) comment '用户名', password char(32) comment '密码是32位的md5值', birthday date comment '生日' )
comment我们可以理解为备注的意思
查看表结构
语法
desc 表名;
示例:
这里解释下上面的各个关键字含义
- Field 表示字段名
- Type 表示字段类型
- null 表示是否允许字段为空
- key 表示索引类型
- default 表示默认值
- extra 表示扩充
修改表
添加列
语法
ALTER TABLE tablename ADD (column datatype [DEFAULT expr][,column datatype]...);
示例
比如说我们要在passwd这一列后面加上一个住址列
alter table users add addr char(100) after passwd;
需要注意的是 我们只能使用after在某一列后面插入一列 而不能使用before
修改列
语法
alter table users modify name varchar(60);
示例
删除列
语法
alter table users drop password;
示例
修改表名
语法
alter table users rename employee;
示例
修改列名
语法
alter table employee change name xingming varchar(60);
需要注意的是 我们修改列名也需要重新定义类型
示例
删除表
语法
DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ...
示例
总结