mysql语句示例

本文详述了MySQL中DDL(数据定义语言)、DML(数据操作语言)和DQL(数据查询语言)的规范要求、操作模板与实例,包括创建/删除表、创建/删除索引、修改字段、插入/更新/删除数据以及查询语句的使用。
摘要由CSDN通过智能技术生成

 

目录

 

前言 

1.规范要求

2.DDL

2.1 创建表

2.1.1 模板

2.1.2 示例

2.2 删除表

2.2.1 模板

2.2.2 示例

2.3 创建索引

2.3.1 模板

2.3.2 示例

2.4 删除索引

2.4.1 模板

2.4.2 示例

2.5 修改索引

2.6 新增字段

2.6.1 模板

2.6.2 示例

2.7 修改字段

2.7.1 模板

2.7.2 示例

3.DML

3.1 insert语句

3.1.1 模板

3.1.2 示例

3.2 update语句

3.2.1 模板

3.2.2 示例

3.3 delete语句

3.3.1 模板

3.3.2 示例

3.4 A表中的数据插入到B表

3.4.1 模板

3.4.2 示例

4.DQL

4.1 select语句

4.1.1 模板

4.1.2 示例


前言 

sql(Structured Query Language)是用于访问和处理数据库的标准计算机语言,主要分为四种。

1.DQL:数据查询语言(Data Query Language),用来获取表中的数据,保留字主要有SELECT、WHERE、ORDER BY、GROUP BY和HAVING等。

2.DML:数据操作语言(Data Manipulation Language),用来新增、变更和删除表中的数据,执行的是行级操作,保留字主要有INSERT、UPDATE和DELETE。

3.DDL:数据定义语言(Data Definition Language),用来创建、删除表或者新增、删除索引等,执行的是表级别的操作,保留字主要有CREAT、DROP、ALTER等。

4.DCL:数据控制语言(Data Control Language),用来设置、更改数据库操作者及其角色权限等,保留字主要有GRANT、REVOKE等。

一般在企业开发中,比较常用的是DQL、DML、DDL这三种。本节主要讨论的就是这三种。

1.规范要求

a)保留字关键字全部大写,其余的小写。

b)表名、字段名或索引名等建议遵守下划线命名法。驼峰命名不适合。mysql是大小写不敏感的,像testUser、TestUsEr等这些在mysql中都是一致的,等同于testuser。建议使用test_user、user_name等。

c)建议给字段和表加上备注信息。

2.DDL

2.1 创建表

2.1.1 模板

CREATE TABLE 【库名a】.【表名b】(

【字段名c1】 【字段类型属性等】,

【字段名c2】 【字段类型属性等】,

PRIMARY KEY(【字段名c1】),

UNIQUE KEY 【唯一索引名k1】(【字段名c2】) USING 【索引方法】 COMMENT '唯一索引xxx'

)ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='表b的备注'; 

说明:

a)首部也可使用CREATE TABLE IF NOT EXISTS 【库名a】.【表名b】(),防止创建表时报错。

b)一个表最多只有一个AUTO_INCREMENT列。

c)KEY:索引,主键primary key也是唯一索引,用于快速查询。

d)ENGINE:指定表的存储引擎,如:InnoDB,MyISAM,HEAP,EXAMPLE,CSV,ARCHIVE,MERGE, FEDERATED或NDBCLUSTER。如果不指定存储引擎,MySQL将默认使用InnoDB。

e)CHARSET:指定字符集,开发中一般都使用utf8,mysql中没有utf-8。

2.1.2 示例

CREATE TABLE IF NOT EXISTS test_dev.test_user(
user_id INT(11) NOT NULL AUTO_INCREMENT COMMENT '用户id',
user_name VARCHAR(45) DEFAULT NULL COMMENT '用户名',
user_code VARCHAR(255) DEFAULT NULL COMMENT '用户code',
user_update_time DATETIME DEFAULT NULL COMMENT '变更时间',
PRIMARY KEY(user_id),
UNIQUE KEY unq_name_code(user_name,user_code) USING BTREE COMMENT '用户名+code在表中唯一'
)ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户表';

说明:

在test_dev数据库中创建test_user表,其中有字段user_id(主键,自增长,int类型,长度11),user_name(varchar类型,长度45,默认为null)等,唯一索引unq_name_code(user_name+user_code在表中唯一),使用InnoDB引擎,默认字符集utf8。

2.2 删除表

2.2.1 模板

DROP TABLE IF EXISTS 【库名a】.【表名b】;
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值