MySQL创建数据库表的语句和基础语句

下面的代码将使用sql语句创建一个数据库表。

格式:

CREATE TABLE  [IF NOT EXISTS] `表名` (
	`字段名` 列类型 [属性] [索引] [注释],
	`字段名` 列类型 [属性] [索引] [注释],
	.......
	`字段名` 列类型 [属性] [索引] [注释]
) [表类型] [字符集设置] [注释]

注意点:

    使用英文() ,表的名称和字段尽量使用 `` 括起来 AUTO INCREMENT 自增 字符串用单引号括起来 所有的语句用结尾加上 , 最后一句不用加 PRIMARY KEY 主键,一般一个表只有一个唯一的主键。
CREATE TABLE IF NOT EXIST student(
 	`id` INT(4) NOT NULL AUTO_INCREMENT COMMENT 学号,   --comment注释,default默认
 	`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 出生日期,
 	`address` VARCHAR (100) DEFAULT NULL COMMENT 家庭地址,
 	`email` VARCHAR(50) DEFAULT NULL COMMENT 电子邮箱,
 	PRIMARY KEY(`id`)  --主键
)ENGINE=INNODB DEFAULT CHARSET=utf8  --INNODB引擎

效果:

关于引擎:

INNODB 默认使用 , MYISAM早些年使用

引擎 MYISAM INNODB 事务支持 不支持 支持 数据行锁定 不支持 支持 外键约束 不支持 支持 全文索引 支持 不支持 表空间大小 较小 较大,约为2倍

常规操作

    MYISAM 节约空间,速度较快 INNODB 安全性高,事务的处理,多表多用户操作

常用命令:

SHOW CREATE DATABASE school --查看创建数据库的语句
SHOW CREATE TABLE student --查看student数据表的定义语句
DESC student --查看表的结构
修改删除表:

修改:

ALTER TABLE teacher RENAME AS allteacher  --修改表名
ALTER TABLE allteacher ADD age INT(11)  --添加表的字段
--修改表的字段
ALTER TABLE allteacher MODIFY age VARCHAR(11)  --修改约束!
ALTER TABLE allteacher CHANGE age age1 INT(1)  --字段重命名!

删除:

ALTER TABLE teacher1 DROP age1 --删除表的字段
DROP TABLE if EXISTS teacher1 --删除表,如果表存在。

所有的删除操作尽量加上判断,以免报错。

经验分享 程序员 微信小程序 职场和发展