社区
MySQL
帖子详情
一个表的字段的外键能否指向同表的主键?
ltolll
2013-03-24 03:31:19
部门ID(主键)
上级部门ID(能否参考同表的"部门ID"作为外键)?
顶级部门的"级部门ID"可为空.
...全文
200
4
打赏
收藏
一个表的字段的外键能否指向同表的主键?
部门ID(主键) 上级部门ID(能否参考同表的"部门ID"作为外键)? 顶级部门的"级部门ID"可为空.
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Rotel-刘志东
2013-03-25
打赏
举报
回复
可以的参照完整性。
2399
2013-03-25
打赏
举报
回复
这样是可以的
ACMAIN_CHM
2013-03-24
打赏
举报
回复
可以自参照。
rucypli
2013-03-24
打赏
举报
回复
可以 mysql> create table test4(a int primary key,b int,foreign key (b) references test4(a)); Query OK, 0 rows affected (0.12 sec) mysql> show create table test4; +-------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Table | Create Table | +-------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | test4 | CREATE TABLE `test4` ( `a` int(11) NOT NULL, `b` int(11) DEFAULT NULL, PRIMARY KEY (`a`), KEY `b` (`b`), CONSTRAINT `test4_ibfk_1` FOREIGN KEY (`b`) REFERENCES `test4` (`a`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 | +-------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.02 sec) mysql> insert into test4 values(1,1); Query OK, 1 row affected (0.02 sec) mysql> insert into test4 values(1,2); ERROR 1062 (23000): Duplicate entry '1' for key 'PRIMARY'
SQL--当一张
表
的两个
外键
指向
同一
主键
最近遇到了这样
一个
问题,当一张
表
中有两个
外键
同时执行了另外一种
表
的
主键
,如何建立一张视图,让这两个
外键
都找到相应的信息。来实例吧:第一张
表
,归还记录:第二张
表
,用户
表
:问题就是,归还记录
表
里有两个
字段
,applicantUserID, operUserID,分别是申请人和操作人,他们作为
外键
同时
指向
了用户
表
的user ID,现在想通过这两个
外键
获取他们各个ID对应的姓名,即userName.分析:当
[mysql
主键
、
外键
约束]
表
创建完成后,再添加
主键
约束
[mysql
主键
、
外键
约束]
表
创建完成后,再添加
主键
约束 今天在做数据库作业时,发现了问题,我不小心忘了写
主键
约束,查了书籍,全都是在插入数据时写的约束,上网找到了
一个
解决方案试验后找到了它的公式。 alter table 需要插入
主键
的
表
名 add primary key(列名); 这就是它的公式,需要注意,这样不可以设置
主键
名。 下面对设置
主键
、
外键
各种方式进行总结
主键
外键
...
主键
和
外键
主键
与
外键
一、什么是
主键
、
外键
:关系型数据库中的一条记录中有若干个属性,若其中某
一个
属性组(注意是组)能唯一标识一条记录,该属性组就可以成为
一个
主键
比如 学生
表
(学号,姓名,性别,班级) 其中每个学生的学号是唯一的,学号就是
一个
主键
课程
表
(课程编号,课程名,学分) 其中课程编号是唯一的,课程编号就是
一个
主键
成绩
表
(学号,课程号,成绩) 成绩
表
中单一
一个
属性无法唯一标识一条记录,学号和课程
聊聊数据库中的关键字——
字段
、属性、列、元组、记录、
表
、
主键
、
外键
学完数据库,我们对SQL SERVER 2008中的部分关键字有了大概的了解,下面我来总结一下几个比较重要的关键字:
字段
、属性、列、记录(元组)、
表
、
主键
、
外键
。
字段
:某
一个
事物的
一个
特征,或者说是属性 在我们学vb时,总是用到控件的各种属性,比如name属性、captain属性、width属性等属性。类似,在这里的某
一个
字段
就是对“员工“控件中的属性。 记录(元组):事物特征
[一点笔记]
主键
与
外键
-MySQL中的
表
连接
关系型数据库中的一条记录中有若干个属性,若其中某
一个
属性组(注意是组)能唯一标识一条记录,该属性组就可以成为
一个
主键
。 比如: 学生
表
(学号,姓名,性别,班级) 其中每个学生的学号是唯一的,学号就是
一个
主键
课程
表
(课程编号,课程名,学分) 其中课程编号是唯一的,课程编号就是
一个
主键
成绩
表
(学号,课程号,成绩) 成绩
表
中单一
一个
属性无法唯一标识一条记
MySQL
57,062
社区成员
56,759
社区内容
发帖
与我相关
我的任务
MySQL
MySQL相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MySQL相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章