一、 mysql支持的数据类型
1.1 mysql支持的数字类型:
TINYINT 1 字节 (-128,127) (0,255) 小整数值 SMALLINT 2 字节 (-32 768,32 767) (0,65 535) 大整数值 MEDIUMINT 3 字节 (-8 388 608,8 388 607) (0,16 777 215) 大整数值 INT或INTEGER 4 字节 (-2 147 483 648,2 147 483 647) (0,4 294 967 295) 大整数值 BIGINT 8 字节 (-9 233 372 036 854 775 808,9 223 372 036 854 775 807) (0,18 446 744 073 709 551 615) 极大整数值
1.2 mysql支持浮点数值
FLOAT 4 字节 (-3.402 823 466 E+38,1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E+38) 0,(1.175 494 351 E-38,3.402 823 466 E+38) 单精度 DOUBLE 8 字节 (1.797 693 134 862 315 7 E+308,2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) 0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) 双精度 DECIMAL 对DECIMAL(M,D) ,如果M>D,为M+2否则为D+2 依赖于M和D的值 依赖于M和D的值 小数值
1.3 mysql支持的字符串型
CHAR 0-255字节 定长字符串 VARCHAR 0-255字节 变长字符串 TINYBLOB 0-255字节 不超过 255 个字符的二进制字符串 TINYTEXT 0-255字节 短文本字符串 BLOB 0-65 535字节 二进制形式的长文本数据 TEXT 0-65 535字节 长文本数据 MEDIUMBLOB 0-16 777 215字节 二进制形式的中等长度文本数据 MEDIUMTEXT 0-16 777 215字节 中等长度文本数据 LOGNGBLOB 0-4 294 967 295字节 二进制形式的极大文本数据 LONGTEXT 0-4 294 967 295字节 极大文本数据
DATE 3 1000-01-01/9999-12-31 YYYY-MM-DD 日期值 TIME 3 '-838:59:59'/'838:59:59' HH:MM:SS 时间值或持续时间 YEAR 1 1901/2155 YYYY 年份值 DATETIME 8 1000-01-01 00:00:00/9999-12-31 23:59:59 YYYY-MM-DD HH:MM:SS 混合日期和时间值 TIMESTAMP 8 1970-01-01 00:00:00/2037 年某时 YYYYMMDD HHMMSS 混合日期和时间值,时间戳
二、 建库、建表语句
2.1 创建数据库
CREATE DATABASE mytest;2.2 使用数据库(选中要操作的数据库)
USE mytest;
2.3 删除数据库
DROP DATABASE mytest;
DROP TABLE IF EXISTS tb_dept; # 如果该表存在,则先删除数据表 CREATE TABLE tb_dept( id INT PRIMARY KEY AUTO_INCREMENT, # 字段id int类型 主键 自增长 NAME VARCHAR(15), # 字段name 字符类型 description VARCHAR(100) #字段description 字符类型 );
DROP TABLE IF EXISTS tb_emp; CREATE TABLE tb_emp ( id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(8) , sex VARCHAR(2), age INT, address VARCHAR(200), email VARCHAR(100) );
DESC tb_dept;
DESC tb_emp;
2.6 修改表
# 修改列的类型 注意: 必须字段中的值都为null时,才可以修改。 ALTER TABLE tb_emp MODIFY NAME VARCHAR(8); # 添加一列 ALTER TABLE tb_emp ADD mobile VARCHAR(15);
# 在字段age前添加一列tel
ALTER TABLE tb_emp ADD tel VARCHAR(15) after sex; # 删除一列 ALTER TABLE tb_emp DROP mobile; # 修改列的名字 ALTER TABLE tb_emp CHANGE mobile mobile1 VARCHAR(20); # 修改表名字 ALTER TABLE tb_emp RENAME lining; # 修改表名字 ALTER TABLE lining RENAME TO tb_emp;