添加约束是DDL或DML
在 sql server 中添加约束属于 DML 或 DDL 哪一类?
Adding constraints in sql server comes under which category DML or DDL?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
在 sql server 中添加约束属于 DML 或 DDL 哪一类?
Adding constraints in sql server comes under which category DML or DDL?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(3)
DDL,因为您定义表之间的关系,而不是修改其中存储的数据。
DDL, as you're defining the relationships between tables, not modifying the data stored in them.
DDL,因为它们改变结构而不是数据。
例如:引用完整性声明
DDL, since they alter the structure rather than the data.
For example: Referential integrity statements
约束必须是DDL语句。让我们来证明一下。
创建两个表A和B,如下:
创建表A(id int主键);
创建表B(id int,外键 id 引用 A(id) );
现在,让我们尝试在表 A 中插入一些数据,然后在表 B 中插入一些数据。
INSERT into A values (1);
INSERT转换为 B 值 (1);
现在,尝试运行 TRUNCATE A;
它将给出外键约束失败错误。这意味着约束应用于表的架构,即DDL 语句。
Constraints must be DDL statements.Let's prove it.
Create two tables A and B as follows:
create table A ( id int primary key );
create table B ( id int, foreign key id references A(id) );
Now, let's try to insert some data in table A, and then table B.
INSERT into A values (1);
INSERT into B values (1);
Now, try to run TRUNCATE A;
It will give Foreign Key Constraint Fail error. It means that Constraints are applied on schema of tables, hence DDL statements.