Mysql 语句

1. 查看所有数据库

SHOW DATABASES;

2. 创建一个数据库,并指定默认编码和排序规则。

CREATE DATABASE `test` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

3. 删除一个数据库

DROP DATABASE db_name;

4. 指定使用的数据库

USE db_name;

5. 查看创建数据库的详细信息

SHOW CREATE DATEBASE db_name;

6. 查看所有的数据表【含视图表】

SHOW TABLES;

7. 查看所有数据表【含视图表】的详细信息。

SHOW TABLES STATUS;

8. 创建一个数据表,指定外键并声明级联修改、删除,设置表注释、引擎、主键自增值、默认编码、排序规则。

示例代码:

CREATE TABLE IF NOT EXISTS `article`(
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `title` varchar(255) NOT NULL COMMENT '标题',
    `description` varchar(600) NOT NULL COMMENT '摘要',
    `image_url` varchar(255) NULL COMMENT '文章列表页配图链接',
    `content` text NOT NULL COMMENT '文章内容',
    `hits` tinyint(1) DEFAULT 1  COMMENT '文章点击数',
    `status` tinyint(1) DEFAULT 1  COMMENT '启用状态,为1表示启用,为2表示禁用',
    `category_id` smallint UNSIGNED NOT NULL  COMMENT '文章类别,外键',
    `user_id` int(11) NOT NULL  COMMENT '文章发布人id',
    `create_time` int(11) NOT NULL COMMENT '文章添加时间',
    `update_time` int(11) NOT NULL COMMENT '最近一次文章更新时间',
    PRIMARY KEY(`id`),
    -- 添加外键方式一,不指定外键约束名称
    FOREIGN KEY (`user_id`) REFERENCES `user`(`id`),
    -- 添加外键方式二,指定外键约束名称
    CONSTRAINT FK_Name foreign key (`category_id`) REFERENCES `category`(`id`) on delete cascade on update cascade
) COMMENT '文章信息表' ENGINE=InnoDB AUTO_INCREMENT=1  DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;

 

9. 当表已经存在时建立外键

-- 补充外键方式一,不指定外键约束名称

ALTER TABLE tablename ADD FOREIGN KEY (`user_id`) REFERENCES `user`(`id`),

-- 补充外键方式二,指定外键约束名称

ALTER TABLE tablename ADD CONSTRAINT FK_Name FOREIGN KEY (`user_id`) REFERENCES `user`(`id`),

10. 删除主键约束时,如果主键列是自增长列,那么需要先【通过修改列的属性】删除该列的自增长,然后再删除主键约束。

ALTER TABLE tablename CHANGE `id` `id` int NOT NULL;

ALTER TABLE tablename DROP PRIMARY KEY;

11. 根据外键约束名称删除外键

ALTER TABLE tablename DROP FOREIGN KEY FK_Name;

12. 清空表数据

TRUNCATE tablename;

13. 直接将查询结果导入或者复制到新创建的数据表。

CREATE TABLE table2 SELECT * FROM table1;

14. 复制一张数据表的结构创建一张新数据表

CREATE TABLE table2 LIKE table1;

15. 创建一张临时表。

CREATE TEMPORARY TABLE table_t(`id` int,`name` varchar(10));

16. 直接将查询结果导入或者复制到新创建的临时表

CREATE TEMPORARY TABLE table_t SELECT * FROM n;

17. 删除一张数据表

DROP TABLE IF EXISTS tablename;

18. 修改表名称

ALTER TABLE tablename RENAME newname;

-- 或者

RENAME TABLE tablename TO newname;

19. 查看表结构

DESC tablename;

-- 或者

SHOW COLUMNS IN tablename;

-- 或者

EXPLAIN tablename;

20. 查看表结构的详细信息

SHOW FULL COLUMN FROM tablename;

21. 查看表的创建语句

SHOW CREATE TABLE tablename;

22. 添加字段并指定位置

ALTER TABE tablename ADD columnname ... AFTER column2;

23. 删除字段

ALTER TABLE tablename DROP  columname;

24. 修改字段属性

ALTER TABLE tablename CHANGE columnname newname ...;

25. 只修改字段的数据类型属性

ALTER TABLE tablename MODIFY columnname new_data_type;

26. 数据的基本 增、查、删、改

INSERT INTO tablename VALUES(...),(...);

-- 或者

INSERT INTO tablename SELECT * FROM tablename2;

SELECT * FROM tablename WHERE ...;

UPDATE tablename SET column1=value1,...;

DELETE FROM tablename where ...;

27. 创建唯一键

-- 不指定唯一约束的名称

ALTER TABLE tablename ADD UNIQUE (columnname);

-- 指定唯一约束的名称

ALTER TABLE tablename ADD UNIQUE u_name (columnname);

28. 创建索引

-- 不指定索引名称

ALTER TABLE tablename ADD INDEX (columnname);

-- 指定索引名称

ALTER TABLE tablename ADD INDEX indexname (columnname);

-- 创建唯一索引并指定索引名称

ALTER TABLE tablename ADD UNIQUE INDEX indexname (columnname);

29. 删除索引或唯一键

DROP INDEX indexname ON tablename;

30. 创建视图

-- 不自定义视图里的列名

CREATE VIEW viewname AS SELECT col1,col2,... FROM tablename;

-- 自定义视图里的列名

CREATE VIEW viewname(col3,col4) AS SELECT col1,col2 FROM tablename;

31. 查看视图

SELECT * FROM viewname;

-- 或者

DESC viewname;

32. 查看视图的创建语句

SHOW CREATE VIEW viewname;

33. 更改视图

CREATE OR REPLACE VIEW viewname AS SELECT col1,col2,... FROM tablename;

-- 或者

ALTER VIEW viewname AS SELECT col1,col2,... FROM tablename;

34. 删除视图

DROP VIEW IF EXISTS viewname;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值