【学习笔记】操作数据库表
创建数据库表
我们以创建学生表为例,里面的字段有:id、姓名、性别、出生日期、email等。
CREATE TABLE `student`(
`id` INT(10) NOT NULL AUTO_INCREMENT COMMENT '学号',
`name` VARCHAR(20) NOT NULL DEFAULT '匿名' COMMENT '姓名',
`sex` VARCHAR(2) NOT NULL DEFAULT '男' COMMENT '性别',
`birthday` datetime DEFAULT NUll COMMENT '出生日期',
`email` VARCHAR(20) DEFAULT NULL COMMENT '邮箱',
PRIMARY KEY(`id`)
)ENGINE=INNODB DEFAULT CHARSET=utf8
注意点:
-
使用英文括号() 将表的字段括起来,表名和字段名用 `` 括起来
-
字符串使用单引号 '' 括起来
-
所有语句后面加英文逗号 , 最后一句不用加
-
AUTO_INCREMENT 自增
-
PRIMARY KEY 主键
-
COMMENT 注释,不要忘记加
格式:
CREATE TABLE [IF NOT EXISTS] `表名`(
`字段名` 列类型 [属性] [索引] [注释],
`字段名` 列类型 [属性] [索引] [注释],
......
`字段名` 列类型 [属性] [索引] [注释]
)[表类型][字符集设置][注释]
常用命令
SHOW CREATE DATABASE jiayou -- 查看创建数据库的语句
SHOW CREATE TABLE student -- 查看创建表的语句
DESC student -- 显示表的结构
修改数据库表
修改表名
ALTER TABLE teacher RENAME AS person;
-- 公式: ALTER TABLE 表名 RENAME AS 新表名
增加表的字段
ALTER TABLE person ADD `name` VARCHAR(20);
-- 公式: ALTER TABLE 表名 ADD 字段名 列属性
修改表的字段
ALTER TABLE person MODIFY `name` INT(10); -- 修改约束
-- 公式: ALTER TABLE 表名 MODIFY 字段名 列属性[]
ALTER TABLE person CHANGE `name` `name1` VARCHER(20); -- 重命名+修改约束
-- 公式: ALTER TABLE 表名 CHANGE 字段名 新的字段名 列属性[]
MODIFY 只能修改约束
CHANGE 可以修改字段名 + 约束,但是不能只修改约束
删除表字段
ALTER TABLE person DROP name1;
-- 公式:ALTER TABLE 表名 DROP 字段名;
删除数据库表
DROP TABLE IF EXISTS person;
-- 公式:DROP TABLE [IF EXISTS] 表名;