关于SQL约束的外键
展开全部
1、外键不是直接建立的
你只有在建立某表与其他表的关系时才能建立外键,因为所谓外键就是用来做与其他表的关联条件。
2、外键与类型无关,但你建立外键时的原表字段与关联表对应字段必须类型和长度一样。
3、标识种子的递增方式在sql
server
2005以下是不可以更改的,sql
server
2005可以更改。另外在oracle中也是可以改的
4、你最后说的那个例子肯定不是表示年月日,我觉得应该是4位的带0补位的顺序号,日期那来的0199呢。这种跟种子规律没关系,如果你想用这种方式当标识,通常的方法要自己写相应的函数或存储过程去按规则生成。
你只有在建立某表与其他表的关系时才能建立外键,因为所谓外键就是用来做与其他表的关联条件。
2、外键与类型无关,但你建立外键时的原表字段与关联表对应字段必须类型和长度一样。
3、标识种子的递增方式在sql
server
2005以下是不可以更改的,sql
server
2005可以更改。另外在oracle中也是可以改的
4、你最后说的那个例子肯定不是表示年月日,我觉得应该是4位的带0补位的顺序号,日期那来的0199呢。这种跟种子规律没关系,如果你想用这种方式当标识,通常的方法要自己写相应的函数或存储过程去按规则生成。
展开全部
create
table
score
(课程号
int
primary
key
,
score
int)
create
table
student
(学号
int
primary
key,
课程号
int,
foreign
key
(课程号)
references
score(
课程号))
--------------------------
公共关键字是
课程号
score
表中
的主键
课程号
是
student表中的非主键,所以score表中的课程号是表student的外键。
---
如果公共关键字在一个关系中是主键,那么这个公共关键字被称为另一个关系的外键
table
score
(课程号
int
primary
key
,
score
int)
create
table
student
(学号
int
primary
key,
课程号
int,
foreign
key
(课程号)
references
score(
课程号))
--------------------------
公共关键字是
课程号
score
表中
的主键
课程号
是
student表中的非主键,所以score表中的课程号是表student的外键。
---
如果公共关键字在一个关系中是主键,那么这个公共关键字被称为另一个关系的外键
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询