创建表:CREATE TABLE IF NOT EXISTS 表名( 字段名称 字段类型 [完整性约束条件], 字段名称 字段类型 [完整性约束条件], …… )ENGINE=存储引擎 CHARSET=编码方式;
如:
CREATE TABLE IF NOT EXISTS imooc_user(
id INT,
username VARCHAR(20),
password CHAR(32),
email VARCHAR(50),
age TINYINT,
card CHAR(18),
tel CHAR(11),
salary FLOAT(8, 2),
married TINYINT(1),
addr VARCHAR(100),
sex ENUM('男', '女', '保密')
)ENGINE=INNODB CHARSET=UTF8;
完整性约束条件:
1.unsigned 无符号,没有负数,从0开始
2.zerofill 零填充,当显示长度不够的时候可以使用前补0的效果填充至指定长度
3.NOT NULL 非空约束,也就是插入值的时候这个字段必须要给值
4.DEFAULT 默认值,如果插入记录的时候没有给字段赋值,则使用默认值
5.PRIMARY KEY 主键,标识记录的唯一性,值不能重复,一个表只能有一个主键,自动禁止为空
6.UNIQUE KEY 唯一性,一个表中可以有多个字段是唯一索引,同样的值不能重复,但是NULL值除外
7.AUTO_INCREMENT 自动增长,只能用于数值列,而且配合索引所有
8.FOREIGN KEY 外键约束
创建一个带有完整性约束条件的数据表:
CREATE TABLE IF NOT EXISTS `imooc_user`(
`id` INT UNSIGNED AUTO_INCREMENT KEY COMMENT '用户编号',
`username` VARCHAR(20) NOT NULL UNIQUE COMMENT '用户名',
`password` CHAR(32) NOT NULL COMMENT'密码',
`email` VARCHAR(50) NOT NULL UNIQUE COMMENT '邮箱',
`age` TINYINT UNSIGNED NOT NULL DEFAULT 18 COMMENT '年龄',
`sex` ENUM('男', '女', '保密') NOT NULL DEFAULT '保密' COMMENT '性别',
`tel` CHAR(11) NOT NULL UNIQUE COMMENT '电话',
`addr` VARCHAR(50) NOT NULL DEFAULT '北京' COMMENT '地址',
`card` CHAR(18) NOT NULL UNIQUE COMMENT '身份证号',
`married` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '0代表未结婚,1代表已结婚',
`salary` FLOAT(8, 2) NOT NULL DEFAULT 0 COMMENT '薪水'
)ENGINE=INNODB DEFAULT CHARSET=UTF8;
查看当前数据库下已有数据表:1.SHOW TABLES;
2.SHOW [FULL] TABLES [{FROM|IN} 数据库名];
查看指定数据表的详细信息:SHOW CREATE TABLE 数据表名;
查看表结构:1.DESC imooc_user;
2.DESCRIBE imooc_user;
3.SHOW COLUMNS FROM imooc_user;
向表中插入一条记录:INSERT 数据库名(id, username……) VALUES(1, 'king'……);
如:INSERT imooc_user(id, username, password, email, age, card, tel, salary, married, addr, sex) VALUES(1, 'king', 'king', '456412696@qq.com', 23, '152364585698755648', '15678952345', 25600.00, 0, '西安', '女');
查询表中所有记录: SELECT * FROM 表名;
删除指定的数据表:DROP TABLE [IF EXISTS] 表名;
添加字段:ALTER TABLE 表名 ADD 字段名称 字段属性 [完整性约束条件] [FIRST|AFTER 字段名称];
删除字段:ALTER TABLE 表名 DROP 字段名称;
添加默认值:ALTER TABLE 表名 ALTER 字段名称 SET DEFAULT 默认值;
删除默认值:ALTER TABLE 表名 ALTER 字段名称 DROP DEFAULT;
修改字段类型、字段属性:ALTER TABLE 表名 MODIFY 字段名称 字段类型 [字段属性] [FIRST|AFTER 字段名称];
修改字段名称、字段类型、字段属性:ALTER TABLE 表名 CHANGE 原字段名称 新字段名称 字段类型 [字段属性] [FIRST|AFTER 字段名称];
添加主键:ALTER TABLE 表名 ADD PRIMARY KEY(字段名称);
删除主键:ALTER TABLE 表名 DROP PRIMARY KEY;
添加唯一:ALTER TABLE 表名 ADD UNIQUE KEY|INDEX [检索名称](字段名称);
删除唯一:ALTER TABLE 表名 DROP 检索名称;
修改数据表名称:1.ALTER TABLE 原表名 RENAME [TO|AS] 新表名;
2.RENAME TABLE 原表名 TO 新表名;
修改AUTO_INCREMENT的值:ALTER TABLE 表名 AUTO_INCREMENT=值;