表
增
示例 demo
1 | CREATE TABLE `【表名字】` ( |
如果有索引,在创建表的语法里写法如下:1
KEY `INDEX_SHELF_TRADINGID_SHELFCODE` (`shelf_code`,`shelf_trading_id`)
如果是唯一索引:1
UNIQUE KEY `INDEX_UNIQUE` (`id`)
删
删除表结构及数据:
1 | DROP TABLE IF EXISTS `【表名字】`; |
不删除表结构,只清空数据:
1 | DELETE FROM 【表名字】; |
效率上 truncate
比 delete
快,但 truncate
删除后不记录 mysql
日志,不可以恢复数据。
改
删除列
1 | ALTER TABLE 【表名字】 DROP 【列名称】 |
增加列
新增列1
2
3ALTER TABLE 【表名字】 ADD 【列名称】 INT
# 等价于
ALTER TABLE shelf_deal_log ADD system_num INT DEFAULT NULL;
新增列,非空,并带说明1
ALTER TABLE 【表名字】 ADD 【列名称】 INT NOT NULL COMMENT '注释说明'
新增一个 datetime
列,设置默认值为创建时的当前时间;1
ALTER TABLE 【表名字】 ADD 【列名称】 DATETIME DEFAULT CURRENT_TIMESTAMP;
新增一个 datetime
列,设置默认值为修改时的当前时间,修改时时间会更新;
1 | ALTER TABLE 【表名字】 ADD 【列名称】 DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; |
修改列的类型信息
1 | ALTER TABLE 【表名字】 CHANGE 【列名称】【新列名称(这里可以用和原来列同名即可)】 BIGINT NOT NULL COMMENT '注释说明' |
重命名列
1 | ALTER TABLE 【表名字】 CHANGE 【列名称】【新列名称】 BIGINT NOT NULL COMMENT '注释说明' |
重命名表
1 | ALTER TABLE 【表名字】 RENAME 【表新名字】 |
删除表中主键
1 | Alter TABLE 【表名字】 drop primary key |
替换主键
1 | ALTER TABLE 【表名字】 DROP PRIMARY KEY ,ADD PRIMARY KEY (【新主键名称,有多个,逗号隔开】); |
添加索引
1 | ALTER TABLE 【表名字】 ADD INDEX 【索引名】 (【索引字段,有多个,逗号隔开】); |
添加唯一限制条件索引
1 | ALTER TABLE 【表名字】 ADD UNIQUE 【索引名】 (【索引字段】); |
删除索引
1 | ALTER TABLE 【表名字】 DROP INDEX 【索引名】; |
查
查看当前数据库下所有的表:
1 | SHOW TABLES; |
查询表的字段信息:
1 | DESC 【表名字】; |
查看表字段详细信息;
1 | SHOW FULL COLUMNS FROM 【表名字】; |
数据库
查找当前服务器上存在哪些数据库;
1 | SHOW DATABASES; |
使用指定数据库,比如使用 antenna
数据库;
1 | USE antenna; |
创建数据库,比如新创建的数据库名称叫 hello
;
1 | CREATE DATABASE hello; |