开发者社区> webdriver.cn> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

SQL提交文件解释DDL、DML、DCL

简介:
+关注继续查看

DDL文件
DDL(data definition language)是数据定义语言:DDL比DML要多,主要的命令有CREATE、ALTER、DROP等
DDL主要是用在定义或改变表(TABLE)的结构,数据类型,表之间的链接和约束等初始化工作上,他们大多在建立表时使用。
1, 对数据库的操作
2, 对数据表的操作
CREATE:用于创建数据库对象。
DECLARE:除了是创建只在过程中使用的临时表外,DECLARE语句和CREATE语句非常相似。唯一可以被声明的对象是表。并且必须放入用户临时表空间。
DROP:可以删除任何用CREATE(数据库对象)和DECLARE(表)创建的对象。 ALTER:允许修改某些数据库对象的信息。不能修改索引。

DML文件
DML(data manipulation language)是数据操纵语言:它们是SELECT、UPDATE、INSERT、DELETE,就象它的名字一样,这4条命令是用来对数据库里的数据进行操作的语言。
DML主要是针对数据的操作, 主要分为4大类,(增,删,改,查) CRUD操作

DQL文件
DQL(Data Query Language) 数据查询语言

DCL文件
DCL(DataControlLanguage)是数据库控制语言:是用来设置或更改数据库用户或角色权限的语句,包括(grant,deny,revoke等)语句。
SQL语句规范要求
1,数据表、数据字段必须加入中文注释

2,把字段定义为NOT NULL并且提供默认值

解读:

a)null的列使索引/索引统计/值比较都更加复杂,对MySQL来说更难优化

b)null 这种类型MySQL内部需要进行特殊处理,增加数据库处理记录的复杂性;同等条件下,表中有较多空字段的时候,数据库的处理性能会降低很多

c)null值需要更多的存储空,无论是表还是索引中每行中的null的列都需要额外的空间来标识

d)对null 的处理时候,只能采用is null或is not null,而不能采用=、in、<、<>、!=、not in这些操作符号。如:where name!=’shenjian’,如果存在name为null值的记录,查询结果就不会包含name为null值的记录

3,使用utf8字符集,如果有字段需要存储emoji表情之类的,则需要将字段或表设置成utf8mb4

4,库名、表名、字段名:小写字母,下划线风格,禁止数字开头,禁止两个下划线中间只出现数字,禁止复数名词。

5,命名中不允许出现MYSQL数据库中的保留字。如desc、range、match、delayed等,请参考MySQL官方保留字。

6,数据库中不允许存储明文密码

7,必须使用InnoDB存储引擎:支持事务、行级锁、并发性能更好、CPU及内存缓存页优化使得资源利用率更高

8,必须使用UTF8字符集:万国码,无需转码,无乱码风险,节省空间(由于移动设备原因最好使用utf8mb4)

9,必须使用varchar(20)存储手机号

解读:

a)涉及到区号或者国家代号,可能出现+-()

b)手机号会去做数学运算么?

c)varchar可以支持模糊查询,例如:like“138%”

字段设计

1) 表被索引列必须定义为not null,并设置default值
2) 禁止使用float、double类型,建议使用decimal或者int替代
3) 禁止使用blob、text类型保留大文本、文件、图片,建议使用其他方式存储(TFS/SFS),MySQL只保存指针信息
4) 禁止使用varchar类型作为主键语句设计

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Mysql_9 SQL 语句——DCL
学习自b站骆昊 jackfrued 老师的网课以及黑马网课。
0 0
SQL语句分类DDL、DML、DQL、DCL语句
SQL语句分类DDL、DML、DQL、DCL语句
0 0
软件测试mysql面试题:SQL中有哪些不同的DCL命令?
软件测试mysql面试题:SQL中有哪些不同的DCL命令?
0 0
SQL中的DQL、DML、DDL和DCL是怎么区分和定义的
SQL中的DQL、DML、DDL和DCL是怎么区分和定义的
0 0
SQL语言:DDL、DML、DQL、DCL详解
SQL程序语言有四种类型,对数据库的基本操作都属于这四类,它们分别为;数据定义语言(DDL)、数据查询语言(DQL)、数据操纵语言(DML)、数据控制语言(DCL)
0 0
SQL | DDL、DQL、DML、DCL 和 TCL 命令介绍
SQL | DDL、DQL、DML、DCL 和 TCL 命令介绍
0 0
数据库管理系统 (DBMS)/ SQL(DDL/DML/DCL)
数据库管理系统(DBMS)的概述   > 方便查询   > 可存储的数据量大   > 保证数据的完整、一致   > 安全可靠 2.
1812 0
SQL中的DML、DDL以及DCL是什么?
SQL中的DML、DDL以及DCL是什么? DML(data manipulation language)是数据操纵语言:它们是SELECT、UPDATE、INSERT、DELETE,就象它的名字一样,这4条命令是用来对数据库里的数据进行操作的语言。
716 0
VS2017调用SQL server 2019 和C++连接语句字符串
VS2017调用SQL server 2019 和C++连接语句字符串
0 0
+关注
webdriver.cn
webdriver.cn
文章
问答
文章排行榜
最热
最新
相关电子书
更多
用SQL做数据分析
立即下载
阿里云流计算 Flink SQL 核心功能解密
立即下载
Comparison of Spark SQL with Hive
立即下载