-- 改变表结构
-- 删除表结构并创建相同结构表- 多用于清除数据,比delete速度快,不可逆
TRUNCATE database_name.table_name;
-- 创建表之前清掉可能存在的同名表-慎用
DROP TABLE IF EXISTS database_name.table_name;
-- 建表语句-包含常用数据类型及默认值、自增、注释等(关键字名不区分大小写,按个人习惯)
-- 字段类型只包含基本类型内的常用类型,还有time、tinyint、double(m, d)、longtext等
CREATE TABLE database_name.table_name (
`id` INT(8) NOT NULL AUTO_INCREMENT COMMENT 'ID主键-自增',
`data_date` DATE NULL COMMENT 'DATA数据-非空',
`data_int` INT(8) DEFAULT '0' COMMENT 'INT类型数据-默认值为0',
`data_float` FLOAT(6,4) DEFAULT '0.0000' COMMENT 'FLOAT类型-默认四位小数',
`data_decimal` DECIMAL(6,4) DEFAULT '0.0000' COMMENT 'DECIMAL类型-默认四位小数',
`data_char` CHAR(10) DEFAULT '-' COMMENT 'CHAR固定长度类型-括号内为字符长度',
`data_varchar` VARCHAR(10) DEFAULT '-' COMMENT 'VARCHAR可变长度类型-括号内为字符长度',
`data_text` TEXT COMMENT 'TEXT类型-用于存储长文本',
`data_datetime` DATETIME NOT NULL COMMENT '日期时间格式:%Y-%m-%d %H:%i:%s',
PRIMARY KEY (`id`),
KEY `in_table_name_data_date` (data_date) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8 COMMENT='建表模板';
===========================================================================
-- 修改索引
-- 创建索引 索引名称:in_表名_列名
ALTER TABLE database_name.table_name ADD INDEX in_table_name_data_datetime (data_datetime);
-- 删除索引
ALTER TABLE database_name.table_name DROP INDEX in_table_name_data_datetime;
===========================================================================
-- 增删表字段
-- 删字段
ALTER TABLE database_name.table_name DROP COLUMN data_char;
-- 增加字段
ALTER TABLE database_name.table_name ADD COLUMN data_double DOUBLE(10,2) COMMENT 'DOUBLE类型';
-- 改变字段类型、注释
ALTER TABLE database_name.table_name MODIFY data_datetime time COMMENT 'TIME 类型-只包含时分秒';
-- 删除表结构并创建相同结构表- 多用于清除数据,比delete速度快,不可逆
TRUNCATE database_name.table_name;
-- 创建表之前清掉可能存在的同名表-慎用
DROP TABLE IF EXISTS database_name.table_name;
-- 建表语句-包含常用数据类型及默认值、自增、注释等(关键字名不区分大小写,按个人习惯)
-- 字段类型只包含基本类型内的常用类型,还有time、tinyint、double(m, d)、longtext等
CREATE TABLE database_name.table_name (
`id` INT(8) NOT NULL AUTO_INCREMENT COMMENT 'ID主键-自增',
`data_date` DATE NULL COMMENT 'DATA数据-非空',
`data_int` INT(8) DEFAULT '0' COMMENT 'INT类型数据-默认值为0',
`data_float` FLOAT(6,4) DEFAULT '0.0000' COMMENT 'FLOAT类型-默认四位小数',
`data_decimal` DECIMAL(6,4) DEFAULT '0.0000' COMMENT 'DECIMAL类型-默认四位小数',
`data_char` CHAR(10) DEFAULT '-' COMMENT 'CHAR固定长度类型-括号内为字符长度',
`data_varchar` VARCHAR(10) DEFAULT '-' COMMENT 'VARCHAR可变长度类型-括号内为字符长度',
`data_text` TEXT COMMENT 'TEXT类型-用于存储长文本',
`data_datetime` DATETIME NOT NULL COMMENT '日期时间格式:%Y-%m-%d %H:%i:%s',
PRIMARY KEY (`id`),
KEY `in_table_name_data_date` (data_date) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8 COMMENT='建表模板';
===========================================================================
-- 修改索引
-- 创建索引 索引名称:in_表名_列名
ALTER TABLE database_name.table_name ADD INDEX in_table_name_data_datetime (data_datetime);
-- 删除索引
ALTER TABLE database_name.table_name DROP INDEX in_table_name_data_datetime;
===========================================================================
-- 增删表字段
-- 删字段
ALTER TABLE database_name.table_name DROP COLUMN data_char;
-- 增加字段
ALTER TABLE database_name.table_name ADD COLUMN data_double DOUBLE(10,2) COMMENT 'DOUBLE类型';
-- 改变字段类型、注释
ALTER TABLE database_name.table_name MODIFY data_datetime time COMMENT 'TIME 类型-只包含时分秒';