1. 创建表
CREATE TABLE table_name (
field1 datatype,
field2 datatype,
field3 datatype
) character set 字符集 collate 校验规则 engine 存储引擎;
解释:
- field: 表示列名
- datatype: 表示列的类型
- character set: 字符集,如果没有指定字符集,则以所在数据库的字符集为准
- collate: 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准
• 查看表的存储文件
sudo vim /etc/my.cnf # mysql的配置文件
# 在配置文件中找到
datadir=/var/lib/mysql # mysql数据存放的目录
sudo ls /var/lib/mysql
InnoDB存储引擎:
table_name.frm # 表结构
table_name.ibd # 数据和索引文件
MyISAM存储引擎:
table_name.frm # 表结构
table_name.MYD # 数据文件
table_name.MYI # 索引文件
• 查看表的创建语句
show create table table_name; #表格显示
show create table table_name \G #分行显示
2. 查看表的结构
desc table_name;
3. 修改表
3.1 修改列(※)
ALTER TABLE tablename ADD column datatype;
ALTER TABLE tablename MODIFY column datatype;
ALTER TABLE tablename DROP column;
• ADD增加列
alter table stu add grade smallint(5) unsigned;
• MODIFY修改列的属性
alter table stu modify grade int(10) unsigned zerofill;
(注意,这里是可以删除约束的)
• 修改列的名字 + 属性
alter table stu change grade goodgrade int(100);
(也可以只修改名字,但是属性要保持一样)
• DROP删除列
alter table stu drop grade;
3.2 修改表名
alter table stu rename to students;
to: 可以省略
3.3 删除表
DROP [TEMPORARY] TABLE [IF EXISTS] tb_name1, tb_name2, ...;
可以一次删除多个表
to: 可以省略