Ⅰ mysql怎么定义外键
数据库mysql
建立外键的前提: 本表的列必须与外键类型相同(外键必须是外表主键)。
外键作用: 使两张表形成关联,外键只能引用外表中的列的值!
指定主键关键字: foreign key(列名)
引用外键关键字: references <外键表名>(外键列名)
事件触发限制: on delete和on update , 可设参数cascade(跟随外键改动), restrict(限制外表中的外键改动),set Null(设空值),set Default(设默认值),[默认]no action
例如:
outTable表 主键 id 类型 int
创建含有外键的表:
create table temp(
id int,
name char(20),
foreign key(id) references outTable(id) on delete cascade on update cascade);
说明:把id列 设为外键 参照外表outTable的id列 当外键的值删除 本表中对应的列筛除 当外键的值改变 本表中对应的列值改变。
自己实践 才能完全了解外键的作用 关键是:事件触发限制的作用
Ⅱ sql如何在创建表时设置外键
1.直接写sql语句。
2.用SQLyog 选择外键表 ,点击右键 选择关联/外键,然后再选择主表,外键。
3.在表 vet_specialties 上点击右键 ,然后找到Relationships/ForeignKeys中,然后选择相应的列。
具体如下:
1、简介
SQL语言,是结构化查询语言(StructuredQueryLanguage)的简称。SQL语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。
2、应用信息
结构化查询语言SQL(STRUCTURED QUERY LANGUAGE)是最重要的关系数据库操作语言,并且它的影响已经超出数据库领域,得到其他领域的重视和采用,如人工智能领域的数据检索,第四代软件开发工具中嵌入SQL的语言等。
3、支持标准
SQL 是1986年10 月由美国国家标准局(ANSI)通过的数据库语言美国标准,接着,国际标准化组织(ISO)颁布了SQL正式国际标准。1989年4月,ISO提出了具有完整性特征的SQL89标准,1992年11月又公布了SQL92标准,在此标准中,把数据库分为三个级别:基本集、标准集和完全集。
Ⅲ SQLSERVER外键约束
当然了,外键就是为了保证数据库的参照完整性的,如果外键表插入的数据没有在主表有相应的主键存在,是不可能成功的。
Ⅳ 求助sql sever高手如何创建外键并约束!分不是问题
1、可以建立数据库关系图,把要关联的表拖进去,让后然后把一张表的主键拖到另一个张表所要的外键上,点击保存就可以了2,用代码生成:alter table 外键表名字 add constraint 主外间关系名字 foreign key (外键字段) references 主键表([主键])
Ⅳ SQL数据库建表时怎么设置外键
1>
--
创建测试主表.
ID
是主键.
2>
CREATE
TABLE
test_main
(
3>
id
INT,
4>
value
VARCHAR(10),
5>
PRIMARY
KEY(id)
6>
);
7>
go
--
建表时设置外键
1>
CREATE
TABLE
test_sub
(
2>
id
INT,
3>
main_id
INT,
4>
value
VARCHAR(10),
5>
PRIMARY
KEY(id),
6>
FOREIGN
KEY
(main_id)
REFERENCES
test_main
7>
);
8>
go
Ⅵ 怎么在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的主键和外键就是起约束作用。
Ⅶ 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的主键和外键就是起约束作用。
Ⅷ mysql怎么设置外键
新建一张表,设置主键字段,这个等下要关联另外表的外键,如图
Ⅸ SQL SERVER 2005 怎么添加外键啊
alter
table
表名
add
constraint
FK_字段
foreign
key(字段)
references
主表(字段)
答案补充
主外键必须一致,除了字段名
答案补充
alter
table
表名
add
constraint
FK_字段
foreign
key(字段)
references
主表(主表字段)
答案补充
use
数据库名
go
alter
table
表名
add
constraint
FK_字段
foreign
key(字段)
references
主表(主表字段)
答案补充
用新建查询必须要在你要执行的数据库去操作,不然他默认的是master
答案补充
新建查询>>输入上面的东西>>按(alt+X)执行