2

是否有将这些陈述分组的特定需求,或者这样做是为了在逻辑上对各种类型的陈述进行命名(在讨论、参考文档等中)?

是否存在将这些语句分成这些子组很重要的用例?

4

4 回答 4

5

DDL(数据定义语言)--> 用于定义数据结构和模式,如 Create 和 Alter 命令。

DML(数据操作语言)--> 用于管理具有模式对象的数据,例如选择命令。

DCL(数据控制语言)--> 用于控制数据,如 Revoke 和 Grant 命令。

TCL(事务控制语言)--> 用于管理 DML 语句(如 Commit)所做的更改。

这些是分类。

于 2012-10-09T15:12:32.960 回答
4

这些是分类,它们退出的原因与其他任何其他分类都存在的原因相同......

关于用例,我几乎看不到您会使用这些术语的情况,但如果您是 SQL Server 管理工具的业务分析师,您可能会说您不希望用户访问任何类型的 DDL 语句,这意味着用户无法在数据库上创建对象...

于 2012-10-09T15:13:02.367 回答
3

没有必要这样。

但在讨论 SQL 时,它确实提供了一个句柄。我经常使用 DML 和 DDL 作为速记。

例子:

MySQL 不支持事务 DDL,但 SQL Server 支持。

每个人(希望)都知道你的意思而不说

MySQL 不支持事务性 CREATE、ALTER 和 DROP 语句...

他们的意思:http ://www.orafaq.com/faq/what_are_the_difference_between_ddl_dml_and_dcl_commands

于 2012-10-09T15:13:16.443 回答
1

他们没有分裂。根据它们在数据库上执行的操作类型,它们被分类为类型。

于 2012-10-09T15:12:07.917 回答