
ACCESS数据库设置数据表外键可以通过SQL数据定义查询和手动设置表间参照完整性两种方式予以实现。
注意设置外键前一方表的关联字段必须是主键或建有唯一索引,下面举例示范这两种设置方法。假设两张数据表的结构如下:
课程(课程ID 文本 主键,课程)
成绩(学号,课程ID,分数)
1)运行SQL数据定义查询
ALTER TABLE 成绩 ADD CONSTRAINT MyRelation1 FOREIGN KEY (课程ID)REFERENCES 课程 (课程ID)
2)手动建立两表一对多参照完整性
于表对象——右键 打开表关系视图,将要建立关系的表显示到关系视图里
拖动一方主表里的关联字段到多方表里。于d出的编辑关系对话框,选择各表对应的关联字段,勾选实施参照完整性选项后,点击创建(或确定)按钮即可,这样系统就会自动建立相应的外键了。
参见附图(此为ACCESS2003图例,其他版本类似)
注意建立外键时,若数据表里存在违反外键约束的记录,创建外键将会报错,只有删除了违反外键约束的有关记录后才能顺利完成外键的设置。
附带简介一下外键 (FOREIGN KEY) ,它是用于在两个表中的数据之间建立和加强链接的一列或多列的组合,可控制可在外键表中存储的数据。 在外键引用中,当包含一个表的主键值的一个或多个列被另一个表中的一个或多个列引用时,就在这两个表之间创建了链接。 这个列就成为第二个表的外键。
可以用SQL语句的方式来设置外键。
如目前有班级表和学生表如下
SQL语句方式
ALTER TABLE 学生表 ADD CONSTRAINT MyRelation1 FOREIGN KEY (所属班级ID)REFERENCES 班级表 (班级ID)
表名CustomerCustomerID int
MemberID int
表名 Member
MemberID int
CustomerID int
表名 Visitor
VisitorID int
CustomerID int
CustomerID是主键而在Member表中和Visitor表中是外键
alter table Member
add constraint FK_ID foregin key(CustomerID) references Users(CustomerID)
alter table Visitor
add constraint FK_ID foregin key(CustomerID) references Users(CustomerID)
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)