创建数据库表 例:
目标:创建一个school数据库
创建学生表(列,字段)使用SQL语句创建
要求:学号int、姓名varchar、密码varchar、生日datetime、家庭住址adress、邮箱varchar;学号为主键;引擎为innoDB;字段为utf-8
CREATE TABLE IF NOT EXISTS `student` (
`id` INT(4) NOT NULL AUTO_INCREMENT COMMENT '学号',
`name` VARCHAR(30) NOT NULL DEFAULT '匿名' COMMENT '姓名',
`pwd` VARCHAR(20) NOT NULL DEFAULT '123456' COMMENT '密码',
`sex` VARCHAR(2) NOT NULL DEFAULT '男' COMMENT '性别',
`birthday` DATETIME DEFAULT NULL COMMENT '出生日期',
`adress` VARCHAR(100) DEFAULT NULL COMMENT '家庭住址',
`email` VARCHAR(50) DEFAULT NULL COMMENT '邮箱',
PRIMARY KEY(`id`)
)ENGINE=INNODB DEFAULT CHARSET=utf8
【MySQL|创建数据库表及修改删除数据表字段】

文章图片
注意:NOT不要写成NO
格式:
CREATE TABLE [IF NOT EXISTS] `表名`(`字段名` 列类型 [属性] [索引] [注释],`字段名` 列类型 [属性] [索引] [注释],........`字段名` 列类型 [属性] [索引] [注释])[表类型] [字符集设置] [注释]
小结:
1.使用英文括号(),表的名称和字段尽量使用 ` ` 括起来
2.ATUO INCREMENT 自增
3.所有语句后面加英文逗号(,) ,最后一个语句不用加
4.PRIMARY KEY 是主键,一般一个表只有唯一的一个主键
5.每个表都必须存在以下五个字段,表示一个记录存在的意义。(id 主键、`version` 乐观锁、is_delete 伪删除、gmt_create 创建时间、gmt_update 修改时间)
6.字符集编码不设置的话,会是默认的Latin1(不支持中文!)。可在MySQL文件夹中的my.ini中配置默认的编码(character-set-server=utf8),一般不建议配置
查看修改删除表 查看创建语句
--查看创建数据表的语句
SHOW CREATE DATABASE school--查看student数据表的定义语句
SHOW CREATE TABLE student--显示表的结构
DESC student
修改
-- 修改表 ALTER TABLE 旧表名 RENAME AS 新表名
ALTER TABLE teacher RENAME AS teacher1
-- 增加表的字段 ALTER TABLE 表名 ADD 字段名 列属性
ALTER TABLE teacher1 ADD age INT(11)
-- 修改表的字段 (重命名,修改约束!)
-- ALTER TABLE 表名 MODIFY 字段名 列属性[]
ALTER TABLE teacher1 MODIFY age VARCHAR(11) -- 修改约束
--ALTER TABLE 表名 CHANGE 旧名字 新名字 列属性[]
ALTER TABLE teacher1 CHANGE age age1 INT(1) -- 字段重命名
删除
-- 删除表的字段:ALTER TABLE 表名 DROP 字段名
ALTER TABLE teacher1 DROP age1
-- 删除表(如果表存在再删除)
DROP TABLE IF EXISTS teacher1
小结:
- 所有的创建和删除操作尽量加上判断,以免报错
- SQL关键字大小写不敏感,建议大家小写
- 所有的符号都用英文
- IF EXISTS 判断
- change用来字段重命名,不能修改字段类型和约束
- modify不用来字段重命名,只能修改字段类型和约束
推荐阅读
- sql|sql-lib之order by 注入
- Node.js|typeorm 批量插入数据优化和插入冲突操作
- mysql|mysql oder by 注入_orderby 注入
- 笔记|MySql数据库修改密码【详细教程】
- 2、mysql架构
- 故障分析 | MySQL Router(服务器后端那么闲,为什么不让访问())
- java开发工具|Java 程序员开发常用的工具推荐
- Java|JAVA+MYSQL 实现学生信息管理系统
- Java毕业设计项目实战篇|java mysql图书馆管理系统源码