一、数据库表的简介
1.1、mysql的数据类型
-
数字类型
数据类型 说明 TINTINT 0~255 或 -128~127,1字节,最小的整数 SMALLINT 0~65535 或 -32768~32767,2字节,小型整数 MEDIUMINT 0~16777215 或 -8388608~8388607,3字节,中型整数 INT 0~4294967295 或 -2147683648~2147683647,4字节,标准整数 BIGINT 8字节,大整数 FLOAT 单精度浮点值 DOUBLE 双精度浮点值 BOOLEAN 布尔值 -
字符串类型
数据类型 说明 CHAR 1~255 个字符,固定长度字符串 VARCHAR 长度可变,最多不超过 255 个字符 TEXT 最大长度为 64K 的变长文本 TINYTEXT 与 TEXT 相同,但最大长度为 255 字节 MEDIUMTEXT 与 TEXT 相同,但最大长度为 16K LONGTEXT 与 TEXT 相同,但最大长度为 4GB -
时间日期类型
数据类型 说明 DATE 日期,格式 YYYY-MM-DD TIME 时间,格式 HH:MM:SS DATETIME 日期和时间,格式 YYYY-MM-DD HH:MM:SS TIMESTAMP 时间标签,功能和 DATETIME 相同,但范围较小 YEAR 年份可指定两位数字和四位数字的格式
1.2、常用的数据类型
- INT:整型
- DOUBLE:浮点型
- VARCHAR:字符串型
- DATE:日期类型
二、数据库表的创建
2.1、创建表语法
-- 创建表
CREATE TABLE 数据表名 (
列名1 属性,
列名2 属性…
);
2.2、列属性-约束
- NOT NULL | NULL:该列是否允许是空值
- DEFAULT:表示默认值
- AUTO_INCREMENT:表示是否是自动编号
- PRIMARY KEY:表示是否为主键
列名 数据类型 [NOT NULL | NULL] [DEFAULT 默认值] [AUTO_INCREMENT]
[PRIMARY KEY ] [注释]
2.3、创建表实例
-- 创建学生表
CREATE TABLE student01 (id INT, NAME VARCHAR(10));
2.4、复制结构相同的表
CREATE TABLE student02 LIKE student01;
三、数据库表的查询
3.1、查看表名语法
-- 查看当前数据库中所有的表名
SHOW TABLES;
3.2、查看表结构语法
-- 查看表结构
DESCRIBE 数据表名;
DESCRIBE 数据表名 列名;
-- 查看表结构简写
DESC 数据表名;
DESC 数据表名 列名;
四、数据库表的修改
4.1、添加新列
-- 添加新列
ALTER TABLE 表名 ADD 列名 列属性;
ALTER TABLE student01 ADD email VARCHAR(20) NOT NULL;
4.2、修改列定义
-- 修改列定义
ALTER TABLE 表名 MODIFY 列名 列属性;
ALTER TABLE student01 MODIFY score INT;
4.3、修改列名
-- 修改列名
ALTER TABLE 表名 CHANGE 旧列名 新列名 类型;
ALTER TABLE student01 CHANGE COLUMN NAME stu_name VARCHAR (20) DEFAULT "姓名";
4.4、删除列
-- 删除列
ALTER TABLE 表名 DROP 列名;
ALTER TABLE student01 DROP score;
4.5、修改表名
-- 修改表名方式一
ALTER TABLE 旧表名 RENAME AS 新表名;
ALTER TABLE student01 RENAME AS stu;
-- 修改表名方式二
RENAME TABLE 旧表名 To 新表名;
RENAME TABLE stu TO student01;
五、数据库表的删除
5.1、删除表语法
- IF EXISTS:可选项,先判断是否存在要删除的表,存在时才执行删除操作
- 数据表名:用于指定要删除的数据表名
DROP TABLE [IF EXISTS] 数据表名;
DROP TABLE IF EXISTS stu;