SQLServer中创建主外键约束关系指南
SQLServer中如何给两个表建立主外键约束
当我们使用SQLServer设计数据库时,有时需要为两个表建立主外键约束关系,以便可以对两个表中的数据进行级联删除和级联更新。在SQLServer中添加两个表。
该表建立了主键和外键约束。
首先,创建两张表:主表-MainTable和外键表-ForeignTable。
主表的主键是ID,外键表中的TestID字段是外键,指的是主表的ID。
绘画。
在ForeignTable外键表设计视图中选择“TestID”字段,右键单击并选择“Relationship”选项。
在打开的外键关系表单中点击“添加”按钮,添加一个主外键约束关系FK_ForeignTable_ForeignTable。
点击外键关系表单右侧“表和列规范”中右侧按钮,打开“表和列”表单,选择主键表中的“ID”字段,选择“TestID”外键表中的字段。
单击“确定”,建立主外键约束关系。
在外键关系表单右侧的“INSERT和UPDATE规范”中,将“更新规则”和“删除规则”设置为“级联”,实现主键表和外键数据的级联删除和更新关键表。
。
mysql外键约束怎么写
在MySQL中创建外键约束时;可以使用以下语法:
```sqlALTERTABLEtable_nameADDCONSTRAINTconstraint_nameFOREIGNKEY(column1,column2,...)REFERENCESreferencing_table(column1.column2,.);
``其中,`table_name`是要添加外键约束的表的名称,`constraint_name`是外键约束的名称;``第1栏,Column2,...`是要添加外键约束的表的名称;`reference_table`是`第1列;第2栏;参考表'。
..`是与引用表中的外键约束对应的列名。
例如,假设我们有一个名为“orders”的表,它引用“customer_id”列。
我们可以使用以下语句添加外键约束:```sqlALTERTABLEordersADDCONSTRAINTfk_orders_customersFOREIGNKEY(customer_id)referencecustomers(customer_id);
```这将创建一个名为`fk_orders_customers`的外键约束;“orders”表中的“customer_id”列和“customers”表中的“customer_id”列是相关列。
如果“Orders”表中的一行在“customer_id”列中具有“Customers”表中不存在的值。
该行将被拒绝插入或更新。
sql怎么设置外键(sql怎么设置外键约束)
sqlserver中设置外键要求有三种方式:设置业务、设置表、设置可设计、设置表属性、设置约束、设置引用键;它直接使用transactsql。
1.
1)创建表author:
creatable[dbo].[author](
[id][h3int]notnull,[authorname][char](10)null,[inscriptio][char](480)null,[introction][ntext]null
2)创建表mybbs:
可重置[dbo].[mybbs](
[id][h3in]实体id(1,1)notnull,[authorid][h3int]notnull,[title][char](40)null,[date_of_created][datetime]null,[abstract][char](480)null,[content][ntext]null
2.并使用transactsql语句,流程如下:
1)添加外键约束fk_mybbs_author表mybbs(authorid),author表中的mybbs受author表中第一个keyid约束:
principitransaction
altertabledbo.mybbsaddconstraintfk_mybbs_author
foreignkey(authorid
referencesdbo.author([id])onupdatecascadeondeletecascade
2)根据需要删除外键fk_mybbs_author:
--altertabledbo.mybbsdropconstraintfk_mybbs_author
--rollback
Commission
上面的onupdatecascades和ondeletecascades两个选项指示该字段何时今后该板子的作者将进行删除或更新操作,即在mybbe板子中也将级联删除或更新。
如果不选,则无法在链接到mybbs版块的作者版块上更新或删除。
SQL中主键和外键的作用:
1插入非空值时,如果该值在主键表中不存在,则不能插入被插入。
2.3.删除主键记录时,可以选择级联删除外键记录,也可以选择在创建时拒绝删除外键记录。
4.
最后,SQL主键和外键作为约束。