我很想知道是否有消息告訴哪些列已經使用mysql設置爲CASCADE。做DESC TABLE;似乎沒有產生任何明顯的東西。有什麼建議麼?如何判斷哪些列已被設置爲mysql中的CASCADE
4
A
回答
4
由於MySQL的5.1.10,都可以通過加入獲得來自INFORMATION_SCHEMA
tables此信息REFERENTIAL_CONSTRAINTS
到KEY_COLUMN_USAGE
:
SELECT kcu.COLUMN_NAME
FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS rc
JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE kcu
USING (CONSTRAINT_CATALOG, CONSTRAINT_SCHEMA, CONSTRAINT_NAME)
WHERE 'CASCADE' IN (rc.DELETE_RULE, rc.UPDATE_RULE)
AND kcu.TABLE_SCHEMA = DATABASE()
AND kcu.TABLE_NAME = 'my_table'
2
您可以使用:
show create table tableName;
這將輸出具有級聯刪除引用一個創建表。
實施例從docs鉤住:
mysql> SHOW CREATE TABLE ibtest11c\G
*************************** 1. row ***************************
Table: ibtest11c
Create Table: CREATE TABLE `ibtest11c` (
`A` int(11) NOT NULL auto_increment,
`D` int(11) NOT NULL default '0',
`B` varchar(200) NOT NULL default '',
`C` varchar(175) default NULL,
PRIMARY KEY (`A`,`D`,`B`),
KEY `B` (`B`,`C`),
KEY `C` (`C`),
CONSTRAINT `0_38775` FOREIGN KEY (`A`, `D`)
REFERENCES `ibtest11a` (`A`, `D`)
ON DELETE CASCADE ON UPDATE CASCADE, // <--- This is what you are looking for
CONSTRAINT `0_38776` FOREIGN KEY (`B`, `C`)
REFERENCES `ibtest11a` (`B`, `C`) // <--- This is what you are looking for
ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=INNODB CHARSET=latin1
1 row in set (0.01 sec)
+0
1爲競爭精神 – asprin
相關問題
- 1. 如何判斷Boost的哪些部分已被棄用?
- 2. 如何判斷ALL_TAB_COLS中哪些列未被使用?
- 3. 如何判斷文件應該被分割爲哪些輸入?
- 4. 如何判斷哪些行切換開關已更改
- 5. 如何判斷哪一行被點擊?
- 6. 如何判斷哪個MKPinAnnotation被按下?
- 7. 如何判斷哪些PHP文件被實際使用,哪些不是?
- 8. 如何判斷哪個彈簧引導自動配置器已被激活?
- 9. TransactionScope如何判斷連接是否已被列入
- 10. 如何判斷哪些領域未能GSON系列化
- 11. Android - 如何判斷/設置哪個API級別的目標
- 12. 如何判斷BRE策略中的哪些規則失敗?
- 13. Javascript,html:如何判斷選項框是否已設置?
- 14. 如何判斷表單runat = server是否已設置?
- 15. 如何判斷哪些頁面未在IIS中命中?
- 16. 如何判斷XmlMap指向哪裏(哪些單元格)?
- 17. 在.Net中如何判斷剪貼板的格式設置爲
- 18. AS3,Flash:如何判斷安全設置是否被記住?
- 19. 如何判斷在JIRA中附加了哪些文件?
- 20. 如何判斷哪些提交包含在合併中?
- 21. 如何判斷Delphi DCU中定義了哪些類型?
- 22. 如何判斷哪些類在Ruby on Rails中調用方法?
- 23. 如何判斷在phpBB3中安裝了哪些模塊
- 24. 如何判斷哪些參數是必需的,哪些不是? (visual c + +)
- 25. 如何判斷是否有任何MySQL連接已被刪除或超時?
- 26. 如何判斷net/http的ResponseWriter.Write()是否已被調用?
- 27. 如何判斷Linux下哪些磁盤將被BIOS使用來啓動?
- 28. 如何判斷收到哪些本地通知? Objective - C的
- 29. 如何判斷我在xml對象中的哪個位置
- 30. 如何判斷PHP方法/函數中的可選參數是否已設置?
+ 1爲了善良eggyal,停止通過尋找更好和更聰明的方式讓我出現:P – Fluffeh
@Fluffeh:對不起! :) – eggyal
其實,它很棒,我從你那裏學到了更好的做事方式,所以繼續努力吧! – Fluffeh