1、数据类型
MySQl支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。
CHAR和VARCHAR类型类似,但它们保存和检索的方式不同。它们的最大长度和是否尾部空格被保留等方面也不同。在存储或检索过程中不进行大小写转换。char类型占用固定长度,如果存放的数据为固定长度的建议使用char类型,如:手机号码、身份证等固定长度的信息。
BLOB是一个二进制大对象,可以容纳可变数量的数据。有4种BLOB类型:TINYBLOB、BLOB、MEDIUMBLOB和LONGBLOB。它们只是可容纳值的最大长度不同。
2 数据表的创建
CREATE TABLE 表名(
列名1 数据类型 [约束],
列名2 数据类型 [约束],
...
列名n 数据类型 [约束] //最后一列的末尾不加逗号
)[charset=utf8] //可根据需要指定表的字符编码集
# 例:创建Subject表
CREAT TABLE 'subject'(
subjectId INT,
subjectName VARCHAR(20),
subjectHours INT
) charset=utf8;
INSERT INTO 'subject'(subjectId,subjectName,subjectHours) VALUES(1,'Java',40);
3 数据表的修改 ALTER
ALTER TABLE 表名 操作;
3.1向现有表中添加列 ADD
#在课程表基础上添加gradeId列
ALTER TABLE subject ADD gradeId int;
3.2 修改表中的列 MODIFY
#修改课程表中课程名称长度为10个字符
ALTER TABLE subject MODIFY subjectName VARCHAR(10);
3.3 删除表中的列
#删除课程表中gradeId列
ALTER TABLE subject DROP gradeId; # 每次只能删除一列
3.4 修改列名 CHANGE
#修改课程表中subjectHours列为classHours
ALTER TABLE subject CHANGE subjectHours classHours int; # 修改列名时,给定列新名称,要指定列的类型和约束
3.5 修改表名 RENAME
#修改课程表的subject为sub
ALTER TABLE subject RENAME sub;
3.6 删除表 DROP
DROP TABLE 表名;