[英]Get information to create ALTER TABLE ADD FOREIGN KEY
How to get the information to update an already existing foreign key.. 如何获取信息以更新已经存在的外键。
When updating a foreign key referemce in phpmyadmin this query is sent to the server 在phpmyadmin中更新外键引用时,此查询将发送到服务器
ALTER TABLE `dimension` ADD FOREIGN KEY (`test_id`) REFERENCES `db`.`test`
(`id`) ON DELETE CASCADE ON UPDATE RESTRICT;
But how do I get the status ON DELETE
and ON UPDATE
to sending and updating the alter table query? 但是,如何获取发送和更新alter table查询的状态
ON DELETE
和ON UPDATE
?
You can't. 你不能 You have to drop the existing foreign key constraint and add a new one.
您必须删除现有的外键约束并添加一个新的约束。
However, you can fetch the existing reference_option
from the INFORMATION_SCHEMA
: 但是,您可以从
INFORMATION_SCHEMA
获取现有的reference_option
:
SELECT CONSTRAINT_NAME, UNIQUE_CONSTRAINT_NAME, UPDATE_RULE, DELETE_RULE
FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
WHERE CONSTRAINT_SCHEMA = DATABASE()
AND UNIQUE_CONSTRAINT_SCHEMA = DATABASE()
AND TABLE_NAME = 'dimension'
AND REFERENCED_TABLE_NAME = 'test'
Or else from SHOW CREATE TABLE
: 否则从
SHOW CREATE TABLE
:
SHOW CREATE TABLE dimension
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.