在MySQL中如何设置主键和外键 在MySQL中如何设置主键和外键

\u5728MySQL\u4e2d\u5982\u4f55\u8bbe\u7f6e\u4e3b\u952e\u548c\u5916\u952e

1.\u5916\u952e\u7684\u4f5c\u7528,\u4e3b\u8981\u6709\u4e24\u4e2a:

\u4e00\u4e2a\u662f\u8ba9\u6570\u636e\u5e93\u81ea\u5df1\u901a\u8fc7\u5916\u952e\u6765\u4fdd\u8bc1\u6570\u636e\u7684\u5b8c\u6574\u6027\u548c\u4e00\u81f4\u6027

\u4e00\u4e2a\u5c31\u662f\u80fd\u591f\u589e\u52a0ER\u56fe\u7684\u53ef\u8bfb\u6027

2.\u5916\u952e\u7684\u914d\u7f6e

1)\u5148\u521b\u5efa\u4e00\u4e2a\u4e3b\u8868\uff0c\u4ee3\u7801\u5982\u4e0b\uff1a

#\u521b\u5efa\u8868student,\u5e76\u6dfb\u52a0\u5404\u79cd\u7ea6\u675f

create table student

(

id int primary key , #\u4e3b\u952e\u7ea6\u675f

name varchar(20) , #\u552f\u4e00\u7ea6\u675f

age int NOT NULL, #\u975e\u7a7a\u7ea6\u675f

sex varchar(2) ,

address varchar(20) default '\u91cd\u5e86' #\u9ed8\u8ba4\u7ea6\u675f

) ;

\u518d\u901a\u8fc7\u4e00\u4e2a\u5916\u952e\uff0c\u521b\u5efa\u4e00\u4e2a\u5206\u6570\u8868\uff0c\u8fd9\u6837\u7684\u8bdd\uff0c\u5c31\u53ef\u4ee5\u65b9\u4fbf\u67e5\u8be2\u3002\u4ee3\u7801\u5982\u4e0b\uff1a

#\u521b\u5efa\u5206\u6570\u8868

create table score

(

id int primary key ,

sid int ,

china int ,

history int,

english int,

constraint FK_sid foreign key(sid) references student(id) #\u901a\u8fc7\u5916\u952e\u521b\u5efa\u94fe\u63a5

) ;



\u521b\u5efa\u5916\u952e\u7684\u65b9\u6cd5\u6709\u5f88\u591a\uff0c\u5176\u4e2d\u6700\u5e38\u89c1\u521b\u5efa\u5916\u952e\u7684\u683c\u5f0f\u662f\uff1aconstraint FK_*** foreign key(**) references \u94fe\u63a5\u7684\u5916\u8868

\u5220\u9664\u5916\u952e:

alter table drop foreign key '\u5916\u952e\u540d'.

\u6ce8\u610f:

\u53ea\u6709\u5728\u5b9a\u4e49\u5916\u952e\u65f6,\u7528constraint \u5916\u952e\u540d foreign key .... \u65b9\u4fbf\u8fdb\u884c\u5916\u952e\u7684\u5220\u9664




\u4e3b\u952e\u662f\u552f\u4e00\u6807\u793a\u8fd9\u4e00\u884c\u7684\uff0c\u5c31\u597d\u50cf\u4f60\u7684\u8eab\u4efd\u8bc1\u53f7\u4e00\u6837\uff0c\u6bcf\u4e2a\u4eba\u53ea\u6709\u4e00\u4e2a\uff0c\u4e5f\u662f\u552f\u4e00\u80fd\u8bc1\u660e\u4f60\u662f\u4f60\u7684\u4e1c\u897f\u3002\u5916\u952e\u662f\u522b\u4eba\u6267\u884c\u4f60\u7684\u4e1c\u897f\u3002\u4e5f\u5c31\u662f\u8bf4\u5982\u679c\u4e00\u4e2a\u4eba\u60f3\u548c\u4f60\u6709\u70b9\u5173\u7cfb\u600e\u4e48\u529e\uff0c\u90a3\u5c31\u8981\u5173\u8054\u8d77\u6765\uff0c\u600e\u4e48\u5173\u8054\u8d77\u6765\uff0c\u5c31\u901a\u8fc7\u5916\u952e\u554a


\u5b9a\u4e49\u4e3b\u952e\u548c\u5916\u952e\u4e3b\u8981\u662f\u4e3a\u4e86\u7ef4\u62a4\u5173\u7cfb\u6570\u636e\u5e93\u7684\u5b8c\u6574\u6027\uff0c\u603b\u7ed3\u4e00\u4e0b\uff1a

\u4e00\u3001\u4e3b\u952e\u662f\u80fd\u786e\u5b9a\u4e00\u6761\u8bb0\u5f55\u7684\u552f\u4e00\u6807\u8bc6\uff0c\u6bd4\u5982\uff0c\u4e00\u6761\u8bb0\u5f55\u5305\u62ec\u8eab\u4efd\u6b63\u53f7\uff0c\u59d3\u540d\uff0c\u5e74\u9f84\u3002\u8eab\u4efd\u8bc1\u53f7\u662f\u552f\u4e00\u80fd\u786e\u5b9a\u4f60\u8fd9\u4e2a\u4eba\u7684\uff0c\u5176\u4ed6\u90fd\u53ef\u80fd\u6709\u91cd\u590d\uff0c\u6240\u4ee5\uff0c\u8eab\u4efd\u8bc1\u53f7\u662f\u4e3b\u952e\u3002

\u5916\u952e\u7528\u4e8e\u4e0e\u53e6\u4e00\u5f20\u8868\u7684\u5173\u8054\u3002\u662f\u80fd\u786e\u5b9a\u53e6\u4e00\u5f20\u8868\u8bb0\u5f55\u7684\u5b57\u6bb5\uff0c\u7528\u4e8e\u4fdd\u6301\u6570\u636e\u7684\u4e00\u81f4\u6027\u3002\u6bd4\u5982\uff0cA\u8868\u4e2d\u7684\u4e00\u4e2a\u5b57\u6bb5\uff0c\u662fB\u8868\u7684\u4e3b\u952e\uff0c\u90a3\u4ed6\u5c31\u53ef\u4ee5\u662fA\u8868\u7684\u5916\u952e\u3002

\u6dfb\u52a0\u4e3b\u952e~
ALTER
TABLE
table_name
ADD
CONSTRAINT
pk_name
PRIMARY
KEY(\u5217\u540d);
\u6dfb\u52a0\u5916\u952e~
ALTER
TABLE
table_name
ADD
CONSTRAION
pk_name
FOREIGN
KEY(\u5217\u540d)
REFERENCES
table_name(\u5217\u540d);
\u57fa\u7840\u8bed\u6cd5~\u5176\u4ed6\u6761\u4ef6\u81ea\u884c\u6dfb\u52a0

工具/原料

电脑   MySQL

方法/步骤

设置主键:

1、通过终端进入到mysql命令行工具。

2、通过use关键字进行到目标数据库里。

3、如原表已有主键,先把原来的主键删除掉,通过DROP PRIMARY KEY命令:ALTER TABLE `jingyan` DROP PRIMARY KEY;。

4、主键已经没有了。

5、通过命令:ADD PRIMARY KEY来添加ALTER TABLE `jingyan` ADD PRIMARY KEY ( `id` ) 。

6、输入后按下回车键即可看到 query ok执行成功的字符。

7、回到数据库的可视化工具,即可显示现在的表在id列上添加了主键了。

设置外键:

1、创建好主从表。

2、选择主表,点击设计表,进入到表设计界面。

3、点击外键,进入到外键设置界面。

4、先设置外键名称和选择主表的外键字段。

5、然后在设置外键字段对应从表的数据库、表名和字。

6、点击保存就完成外键设置了。



工具/原料
电脑
MySQL
方法/步骤
设置主键:
1、通过终端进入到mysql命令行工具。
2、通过use关键字进行到目标数据库里。
3、如原表已有主键,先把原来的主键删除掉,通过DROP
PRIMARY
KEY命令:ALTER
TABLE
`jingyan`
DROP
PRIMARY
KEY;。
4、主键已经没有了。
5、通过命令:ADD
PRIMARY
KEY来添加ALTER
TABLE
`jingyan`
ADD
PRIMARY
KEY
(
`id`
)

6、输入后按下回车键即可看到
query
ok执行成功的字符。
7、回到数据库的可视化工具,即可显示现在的表在id列上添加了主键了。
设置外键:
1、创建好主从表。
2、选择主表,点击设计表,进入到表设计界面。
3、点击外键,进入到外键设置界面。
4、先设置外键名称和选择主表的外键字段。
5、然后在设置外键字段对应从表的数据库、表名和字。
6、点击保存就完成外键设置了。

新建一个字段作为你所指定的主键
然后添加约束
用mysql的插件

添加主键~
ALTER TABLE table_name ADD CONSTRAINT pk_name PRIMARY KEY(列名);
添加外键~
ALTER TABLE table_name ADD CONSTRAION pk_name FOREIGN KEY(列名) REFERENCES table_name(列名);
基础语法~其他条件自行添加

我建议你用可视化工具试试。

  • mysql鎬庝箞璁剧疆澶栭敭?
    绛旓細鎵撳紑鍚庨夋嫨澶栭敭鑿滃崟锛屽叿浣撳鍥撅細鍒嗗埆璁剧疆澶栭敭鍚嶏紝瀛楁锛屽叧鑱旀暟鎹簱銆佽〃銆佸瓧娈碉紝浠ュ強鍒犻櫎鏃舵搷浣滐紝鏇存柊鏃舵搷浣滄柟寮忕劧鍚庣偣鍑讳繚瀛樻寜閽嵆鍙 涔熷彲浠ラ氳繃SQL鏂瑰紡瀹屾垚瀵硅〃澶栭敭鐨勬坊鍔狅紝濡傦細璇硶:alter table 琛ㄥ悕 add constraint FK_ID foreign key(浣犵殑澶栭敭瀛楁鍚) REFERENCES 澶栬〃琛ㄥ悕(瀵瑰簲鐨勮〃鐨勪富閿瀛楁鍚);...
  • mysql鍒涘缓琛ㄦ椂璁剧疆澶栭敭
    绛旓細鏂板缓涓寮犺〃锛璁剧疆涓婚敭瀛楁锛岃繖涓瓑涓嬭鍏宠仈鍙﹀琛鐨澶栭敭锛屽鍥 璇风偣鍑昏緭鍏ュ浘鐗囨弿杩 璇风偣鍑昏緭鍏ュ浘鐗囨弿杩 鍦ㄦ柊寤轰竴寮犺〃锛屽湪鏂板缓琛ㄦ椂锛屾坊鍔犱竴涓閿殑瀛楁锛屽鍥 璇风偣鍑昏緭鍏ュ浘鐗囨弿杩 鐐瑰嚮澶栭敭鍔熻兘锛屽垏鎹㈤〉闈㈠鍥撅紝杩欓噷灏卞彲浠ヨ缃閿簡 璇风偣鍑昏緭鍏ュ浘鐗囨弿杩 鍏堝彇涓閿殑鍚嶇О锛屽湪閫夋嫨澶栭敭瀛楁锛屽鍥 璇风偣鍑...
  • mysql 濡備綍寤虹珛澶栭敭
    绛旓細璇︾粏璇存槑鍙互鐧惧害鎼滄垜鐨勫崥瀹: mysql foreign澶栭敭璇︾粏浣跨敤鏂规硶鍜屼娇鐢ㄤ簨椤筥2018_lcf ---涓嬮潰鏄娇鐢ㄦ柟娉 浣跨敤澶栭敭鐨勫墠鎻愶細1. 琛ㄥ偍瀛樺紩鎿庡繀椤绘槸innodb锛屽惁鍒欏垱寤虹殑澶栭敭鏃犵害鏉熸晥鏋溿2. 澶栭敭鐨勫垪绫诲瀷蹇呴』涓庣埗琛鐨勪富閿绫诲瀷瀹屽叏涓鑷淬3. 澶栭敭鐨勫悕瀛椾笉鑳介噸澶(涓鑸娇鐢ㄣ傚缓澶栭敭琛ㄤ袱绉嶆柟寮(鍒涘缓琛ㄦ椂鍏宠仈/娣诲姞澶栭敭)...
  • 鍏充簬mysql閲 涓婚敭,澶栭敭,榛樿 鑱旂骇鍒犻櫎鐨勯棶棰,鎬庝箞瑙e喅?
    绛旓細寤虹珛澶栭敭鐨鍓嶆彁锛 鏈〃鐨勫垪蹇呴』涓庡閿被鍨嬬浉鍚(澶栭敭蹇呴』鏄琛涓婚敭)銆傚閿綔鐢細 浣夸袱寮犺〃褰㈡垚鍏宠仈锛屽閿彧鑳藉紩鐢ㄥ琛ㄤ腑鐨勫垪鐨勫硷紒鎸囧畾涓婚敭鍏抽敭瀛楋細 foreign key(鍒楀悕)寮曠敤澶栭敭鍏抽敭瀛楋細 references <澶栭敭琛ㄥ悕(澶栭敭鍒楀悕)浜嬩欢瑙﹀彂闄愬埗: on delete鍜宱n update , 鍙鍙傛暟cascade(璺熼殢澶栭敭鏀瑰姩), restrict(...
  • 鍦╩ysql涓,琛ㄧ殑瀛楁鏄湰琛ㄧ殑澶栭敭,杩欒濡備綍璁剧疆?
    绛旓細杩欓噷鎴鐨閫夋嫨鏄疌ASCADE,鎰忔濆氨鏄綋鍏宠仈鐨勮〃鏇存柊浠ュ悗,teacher銆媎ept瀛楁浼璁剧疆涓虹骇鑱旀洿鏂般4. 璁剧疆瀹屾垚鍚庣偣鍑烩榮ave鈥欎繚瀛橀鍑,涔熷彲浠ョ偣鍑烩榓dd Foreign Key鈥欏啀娣诲姞涓涓閿MySQL鏄竴涓叧绯诲瀷鏁版嵁搴撶鐞嗙郴缁,鐢辩憺鍏 MySQL AB 鍏徃寮鍙,鐩墠灞炰簬 Oracle 鏃椾笅鍏徃銆侻ySQL 鏈娴佽鐨勫叧绯诲瀷鏁版嵁搴撶鐞嗙郴缁,鍦 WEB 搴旂敤...
  • mysql琛璁剧疆澶栭敭
    绛旓細閭d綘搴旇鍦ㄨ〃 vet_specialties 涓婄偣鍑诲彸閿 锛岀劧鍚庢壘鍒癛elationships/ForeignKeys涓紝鐒跺悗閫夋嫨鐩稿簲鐨勫垪銆傛垨鑰呯洿鎺ュ啓鍛戒护 ALTER TABLE vet_specialties ADD FOREIGN KEY FK_SPECIALTY_ID(specialty_id) REFERENCES specialties (id)ALTER TABLE vet_specialties ADD FOREIGN KEY FK_VET_ID(vet_id) REFERENCES ...
  • 濡備綍鍦sqlyog璁剧疆琛鐨澶栭敭
    绛旓細3銆佸垱寤轰袱涓〃锛屽懡浠や负class銆乻tudent锛沜lass琛ㄧ粨鏋勪负id銆乧lass_code銆乧lass_name锛泂tudent琛ㄧ粨鏋勪负id銆乧lass_code銆乻tudent_code銆乻tudent_name锛4銆佸垱寤烘垚鍔熷悗锛屽湪newMysql鏁版嵁搴鍒楄〃涓氨瀛樺湪浜嗕袱涓〃锛5銆佺劧鍚庢垜浠潵鍒涘缓澶栭敭锛涢氳繃sql鍒涘缓锛歛lter table class add foreign key class_foreignKey(id) ...
  • navicat 8.0 for mysql鎬庝箞璁剧疆澶栭敭
    绛旓細鐩存帴灏卞彲浠ユ坊鍔犲閿鐨[涓嶇敤鏂板缓绱㈠紩]1.閫夎璁¤〃 2.閫夆樺閿欐爮 3.鎸夋坊鍔犲閿 4.濉啓澶栭敭淇℃伅 5.閫鍑猴紝淇濆瓨 璁剧疆鐣岄潰鍙傝冧笅鍥
  • 鍦╩ysql涓庝箞娣诲姞foreign key
    绛旓細MySQL涓锛孖nnoDB寮曟搸绫诲瀷鐨勮〃鏀寔浜嗗閿害鏉燂紝MyISAM绫诲瀷鏆傛椂涓嶆敮鎸佸閿傚缓绔嬪閿叧绯荤殑涓や釜琛ㄧ殑鍒楀繀椤绘槸鏁版嵁绫诲瀷鐩镐技锛屼篃灏辨槸鍙互鐩镐簰杞崲绫诲瀷鐨勫垪锛屾瘮濡俰nt鍜宼inyint鍙互锛岃宨nt鍜宑har鍒欎笉鍙互锛涙澶栵紝鑱斿悎涓婚敭鍦∕SSQL涓缓绔嬪閿細鍑虹幇涓浜涙儏鍐碉紝涓嶅缓璁娇鐢ㄣ傚閿殑濂藉锛氬彲浠ヤ娇寰椾袱寮犺〃鍏宠仈锛屼繚璇佹暟鎹殑...
  • 鍦╩ysql鏁版嵁搴撲腑涓涓〃涓彲浠ユ湁涓涓涓婚敭涓涓閿悧?寰堟,鍏堣阿璋㈠ぇ瀹朵簡...
    绛旓細褰撶劧鍙互锛屽閿瓧娈靛繀椤讳笌鍏朵粬鏌愪釜琛ㄤ腑鐨勪富閿瀛楁鍏宠仈锛岀被鍨嬪繀椤荤浉鍚屻
  • 扩展阅读:主键和外键怎么标明 ... mysql表中如何设置外键 ... mysql如何设置两个主键 ... 数据库设置两个主键 ... mysql中怎么设置双主键 ... 怎么设置主键 ... mysql复合主键怎么设置 ... mysql两个主键怎么输 ... mysql中两个主键怎么设置 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网