是否需要对这些语句进行分组,或者这样做是为了对各种类型的语句(在讨论、参考文档等中)进行逻辑上的术语划分?
是否存在将这些语句划分到这些子组中很重要的用例?
发布于 2012-10-09 15:13:02
这些是分类,它们退出的原因与任何其他分类存在的原因相同……
关于用例,我几乎看不到您会使用这些术语的情况,但如果您是SQL Server管理工具的业务分析师,您可能会说您不希望用户访问任何类型的DDL语句,这意味着用户无法在数据库上创建对象...
发布于 2012-10-09 15:12:33
DDL (数据定义语言) -->用于定义数据结构和模式,如Create和Alter命令。
DML (Data Manipulation Language,数据操纵语言) -->用于使用诸如Select命令之类的模式对象管理数据。
DCL (数据控制语言) -->用于控制数据,如Revoke和Grant命令。
TCL (事务控制语言) -->用于管理由诸如Commit之类的DML语句所做的更改。
这些是分类。
发布于 2012-10-09 15:13:16
因此,没有必要这样做。
但在讨论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
https://stackoverflow.com/questions/12803047
复制相似问题