在SQl中、主外键主要到底 是干什么用的?

2025-01-02 07:58:18
推荐回答(5个)
回答1:

主键Primary key,唯一标示一个实体。是保证数据库的实体完整性,保证数据中数据的正确性和合理性,取值非空唯一。例子:create table 学生表(学号 int primary key)
外键Foreign,是用来使表与表之间联系。用来保证数据库的参照完整性,外键的取值必须来自参照表参照列的值,可以为空也可不为空。例子:create table 选课表(学号 int foreign key references 学生表(学号))

连接查询与内外键的关系:

连接的 连接条件:A表的主键 = B表的外键如果做连接的两表没有主外键关系,那么连接结果是笛卡尔积,没有意义。
例:学生表和选课表做连接,select *from 学生表,选课表where 学生表.学号(主键)=选课表.学号(外键)

主外键可以建级联级触发器,用来做级联删除、更新。作用原理还是因为主外键将两表联系。

回答2:

主外键就是完整性约束,查询时可以提高效率
内连接和外连接是查询时表的连接方式,主外键是表之间关系
主外键 还有 级联删除 级联更新(Oracle没有,SQL Server有)功能
http://baike.baidu.com/view/690105.html

回答3:

举个简单的例子
表a内有列c1
表b内有列c2
将c2的外键指向c1
那么当你向表b插入数据时,c2的内容必须为c1中的一个
还有几个约束需要你设置
如删除或者修改表a中的字段时怎么处理表b中相关联的数据

回答4:

主键是表内查询用的唯一标识,具有不重复性特点
外键是表间连接用的,即多表查询

回答5:

参考下:http://zhidao.baidu.com/question/318157329.html?oldq=1
数据库表中的主键和外键。