注意:从表的外键关联的必须是主表的主键,且主键和外键的数据类型必须一致 。例如,两者都是 INT 类型,或者都是 CHAR 类型 。如果不满足这样的要求,在创建从表时,就会出现“ERROR 1005(HY000): Can't create table”错误 。
在修改表时添加外键约束
外键约束也可以在修改表时添加,但是添加外键约束的前提是:从表中外键列中的数据必须与主表中主键列中的数据一致或者是没有数据 。
在修改数据表时添加外键约束的语法格式如下:
阅读剩余部分
相关阅读
mysql日期如何转字符串
【mysql数据库】第三章解读:服务器性能剖析(上)
mysql case when的用法是什么
mysql关闭后自动重启怎么办
mysql精讲之二:dml数据操作语句
浅析mysql中concat以及group_concat的使用
mysql如何来创建表
mysql怎么清空数据表数据
mysql安装配置jdbc和基础学习
mysql怎么加入一个数据库?
mysql在建表时添加外键约束-- 添加外键约束
CREATE TABLE stu(
sid INT PRIMARY KEY,
NAME VARCHAR(50) NOT NULL
);
-- 添加外键约束方式一
CREATE TABLE score1(
score DOUBLE,
sid INT,
CONSTRAINT fk_stu_score1_sid FOREIGN KEY(sid) REFERENCES stu(sid)
);
-- 添加外键约束方式二(若表已存在,可用这种)
CREATE TABLE score1(
score DOUBLE,
sid INT
);
ALTER TABLE score1 ADD CONSTRAINT fk_sid FOREIGN KEY(sid) REFERENCES stu(sid)
数据库外键怎么设置?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怎么设置外键
可以在创建表的时候创建 , 也可以在创建表之后创建 。
创建表时创建:
create table student
(id int primary key,
name char(4),
dept char(9)
sex char(4))
create table grade
(id int ,
grade int
constraint id_fk foreign key (id) references student (id)
)
或创建了两表之后再建
alter table grade
add constraint id_fk foreign key (id) references student (id)
呵呵,希望能帮助你 。
sql server中图形界面如何设置外键
在那个属性上右键 有约束 自己添加就OK了
mysql怎么设置外键?
ALTER TABLE b ADD CONSTRAINT c FOREIGN KEY(c) REFERENCES a(c) ON DELETE CASCADE ON UPDATE CASCADE; 哎呀 。。好像写反了 。我写的是把表B的c设置为外键了 。。你改一下吧 。
如何在数据库的建立表的时候设置表的外键
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 server 2008 怎么设置外键
建外键的前提是此外键必须是另外一个表的主键 。建外键的步骤: 第一步打开要建外键表的设计器,右击选择“关系” 。然后弹出“外键关系”窗体 , 我们选择“添加”,然后点击“表和列规范”后面的小按钮,就会弹出另外一个窗体让我们选择主键表和列,选好之后点击确定 。然后我们INSERT和UPDATE规范,在更新规则和删除规则有四个选项,分别是“不执行任何操作”、“级联”、“设置为NULL”、“设置默认值” 。默认的不执行任何操作 。如果是“不执行任何操作” , 当我们删除或更新主键表的数据时 , 会告诉用户不能执行删除或更新该操作 。“级联”的意思是当我们删除或更新主键表的数据时 , 会删除或更新外键表中所涉及的相关数据的所有行 。“设置Null”的意思是当我们删除或更新主键表的数据时,外键表中的外键列的值会设为Null,但前提是该列允许为空 。“设置默认值”的意思是如果我们将外键列定义了默认值,当我们删除或更新主键表的数据时,外键表中的外键列的值设为定义的默认值 。当然我们可以用代码创建,当我们在创建数据库表T——Card时只要加上一句话就OK啦,“Foreign key (studentNo) references T_Student(studentNo)" 。如果我们已经创建了改表,那如何用代码实现了,这也很简单也就一句话“ add constraint CMPKey(外键名) foreign key(studentNo) references T_Student(studentNo)” 。
推荐阅读
- 区块链区块,区块链区块的结构
- 新媒体商务行业现状如何,新媒体商业化
- 邀请函怎么制作电脑壁纸,邀请函怎么制作电脑壁纸图片
- 6s手机网页css无效的简单介绍
- java代码循环输出 java怎么循环输出
- 如何判断他的新媒体文案,新媒体文案的表现形式
- 种菜经营升级类的手机游戏,种菜经营游戏大全
- GO语言学习壁纸文字励志 go语言值得学 知乎
- linux命令端口状态,linux 端口命令