急!急!急!急!急!在mysql中怎样为一建立的表创建外键

zcyu 2003-06-19 09:39:19
各位大侠:
我已用EMS mysql Manager建立了一些表,发现mysql Manager中没有外键,但想建立外键,怎么办 ?
例如: tb-buy(CustomerID,goodsID,price )
怎么把 CustomerID,goodsID改为外键。
...全文
71 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
yzt001 2003-06-20
  • 打赏
  • 举报
回复
什么是外键呀?
shuixin13 2003-06-19
  • 打赏
  • 举报
回复
首先你的表必须是 InnoDB 表类型

從 3.23.50 開始,InnoDB 允許通過下面的方法給一個表添加一個外鍵約束:


ALTER TABLE yourtablename
ADD [CONSTRAINT symbol] FOREIGN KEY [id] (...)
REFERENCES table_name (index_col_name, ...)
[ON DELETE {CASCADE | SET NULL | NO ACTION
| RESTRICT}]
[ON UPDATE {CASCADE | SET NULL | NO ACTION
| RESTRICT}]

記住首先要建立必要的索引,盡管可以通過 ALTER TABLE 為一個表建立一個自參考(self-referential)的外鍵。
從 4.0.13 開始,InnoDB 支持

ALTER TABLE DROP FOREIGN KEY internally_generated_foreign_key_id

當你需要刪除一個外鍵時可以使用 SHOW CREATE TABLE 來查看 internally generated foreign key id。

57,062

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧