1. 急,sqlserver外键问题【高分】
FOREIGN KEY (BSCNAME) REFERENCES tBSC (BSCNAME)
你引用tBSC的BSCNAME 但是那个列不是主键
所以外键约束也无法建立
外键引用的字段 必须是主键
2. sqlserver数据库主外键问题
你这个表设计不符合第三范式。
正常应该是有一个学生表(stu_id,stu_name,age,sex),班级表(class_id,class_name),然后再有一个学生班级表(stu_id,class_id)
学生表中stu_id是关键字;班级表中class_id是关键字;学生班级表中stu_id,class_id组合关键字;
学生班级表中:
stu_id是外键,引用学生表的stu_id
class_id是外键,引用班级表的class_id
3. sqlserver 如何用sql修改外键
亲,知其然之气所以然,请看下面的具体案例噢,这样对你的学习有帮助滴
这是的主键和外键为:
4. sql创建外键语句
1、创建测试主表(班级表test_class),
create table test_class(class_id number, class_name varchar2(20));
5. sqlserver 2008 允许为空的建外键语句怎么写
不知道你这个 允许为空的建外键 是什么意思.
不知道是不是指:
-- 创建外键(使用 ON DELETE SET NULL 选项,删除主表的时候,同时将子表的 main_id 设置为 NULL)
ALTER TABLE test_sub
ADD CONSTRAINT main_id_cons
FOREIGN KEY (main_id) REFERENCES test_main ON DELETE SET NULL;
6. “SQL Server”中的“键”是什么意思主键和外键是什么
这需要理清几个概念:
1.候选键: 关系中的一个属性组,其值能唯一标识一个元组,若从该属性组中去掉任何一个属性,它就不具有这一性质了,这样的属性组称作候选码。
2.主键:当有多个候选码时,可以选定一个作为主码,选定的候选码称主键
3.外键: 关系R中的一个属性组,它不是R的候选码,但它与另一个关系S的候选码相对应,则称这个属性组为R的外码或外键。
7. SQLserver的主键、外键……等五大键的作用和区别
主键就是可以唯一标示的,比如你的身份证号就是可以做主键,因为它一定唯一标示你,而你的姓名不能是主键,因为有重名的,不能唯一标示你。外键就是和你有关系,但唯一标示的却是别人,比如你爱人的身份证号,当然这样比喻不很贴切,只是好理解而已。
8. sql怎么设置外键
sql server中建立外键约束有3中方式:enterprise manager中,tables,design table,设置table的properties,可以建立constraint, reference key;enterprise manager中,diagrams, new diagrams,建立两个表的关系;直接用transact sql语句。
1、三个方法都需要先建立数据表。
1)创建表author :
create table [dbo].[author] (
[id] [bigint] not null ,
[authorname] [char] (10) null ,
[address] [char] (480) null ,
[introction] [ntext] null
)
2)创建表mybbs:
reate table [dbo].[mybbs] (
[id] [bigint] identity (1, 1) not null ,
[authorid] [bigint] not null ,
[title] [char] (40) null ,
[date_of_created] [datetime] null ,
[abstract] [char] (480) null ,
[content] [ntext] null
)
2、设置表mybbs中的authorid为外键,参照author表的id字段,直接使用transact sql语句,过程如下:
1)增加表mybbs(authorid)的外键约束fk_mybbs_author,表mybbs中的authorid受表author中的主键id约束:
begin transaction
alter table dbo.mybbs add constraint fk_mybbs_author
foreign key (authorid)
references dbo.author([id]) on update cascade on delete cascade
2)删除外键约束fk_mybbs_author:
--alter table dbo.mybbs drop constraint fk_mybbs_author
--rollback
commit transaction
上面on update cascade,on delete cascade两个选项,指明以后author表的id字段有delete,update操作时,mybbs表中的id也会被级联删除或更新。如果没有选中,是不可以对author表中已被mybbs表关联的id进行update或者delete操作的。
拓展资料:
SQL的主键和外键的作用:
1、插入非空值时,如果主键表中没有这个值,则不能插入。
2、更新时,不能改为主键表中没有的值。
3、删除主键表记录时,你可以在建外键时选定外键记录一起级联删除还是拒绝删除。
4、更新主键记录时,同样有级联更新和拒绝执行的选择。
简而言之,SQL的主键和外键就是起约束作用。