在mysql中,表的字段是本表的外键,这该如何设置?

如文件夹表有父文件夹ID(parentfolderid)字段和文件夹id(folderid)字段,parentfolderid这个字段是文件夹表folderid的外键... 如文件夹表有父文件夹ID(parentfolderid)字段和文件夹id(folderid)字段,parentfolderid这个字段是文件夹表folderid的外键 展开
 我来答
zzx涵
推荐于2016-12-04 · 知道合伙人互联网行家
zzx涵
知道合伙人互联网行家
采纳数:18 获赞数:2973
学生

向TA提问 私信TA
展开全部
1. 打开我的navicat,然后找到我的teacher表,选中它,然后点击菜单的‘design table’。
2. 在弹出的对话框中找到“Foreign Keys”,然后单击。
3. 然后会出现一个设置外键的界面,一共有七列。简单介绍一下这几列的意思。
‘name’:可以不填,你一会保存成功系统会自动生成。
‘FieldName’:就是你要把哪个键设置为外键。这里选择‘dept’
‘Reference DadaBase’:外键关联的数据库。
‘Reference Table‘ :关联的表 这里是dept表
‘Forgin filed Names’:关联的的字段,这里是code
‘ondelete’:就是删除的时候选择的动作。这里我的选择是setNull,意思就是当关联的表删除以后,teacher》dept字段会设置为null。
‘onupdate’:就是更新的时候选择的动作。这里我的选择是CASCADE,意思就是当关联的表更新以后,teacher》dept字段会设置为级联更新。
4. 设置完成后点击‘save’保存退出,也可以点击‘add Foreign Key’再添加一个外键。
MySQL是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL 所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。由于其社区版的性能卓越,搭配 PHP 和 Apache 可组成良好的开发环境。
迈尔斯_罗德
2013-03-21 · TA获得超过155个赞
知道小有建树答主
回答量:176
采纳率:0%
帮助的人:84.2万
展开全部
是的!一个表只能有一个主键!在文件夹表中,父文件夹的id可以设置成外键!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
老师小乔
推荐于2017-12-16 · TA获得超过3680个赞
知道大有可为答主
回答量:1985
采纳率:66%
帮助的人:665万
展开全部
CREATE TABLE `文件夹表` (
`folderid` int(11) NOT NULL PRIMARY KEY DEFAULT 0 ,
`parentfolderid` int(11) NULL DEFAULT NULL ,
CONSTRAINT `FK__1` FOREIGN KEY (parentfolderid) REFERENCES `文件夹表` (`folderid`)
)
类似这样建立即可。我只写了这两个属性,其它没写。希望对你有所帮助。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
firstdesktop
2013-03-21 · TA获得超过104个赞
知道小有建树答主
回答量:266
采纳率:0%
帮助的人:197万
展开全部
没关系,就按一般外键创建方法创建即可。只是父子表都是一张表。

按照术语来说就是:自关联

这个表也成为了自关联表。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式