ฉันจะค้นหาตารางทั้งหมดที่มีคีย์นอกที่เกี่ยวข้องกับตารางเฉพาะคอลัมน์และมีค่าสำหรับคีย์นอกเหล่านั้นได้อย่างไร
ฉันมีตารางที่ใช้คีย์หลักเป็นคีย์นอกในตารางอื่นๆ หลายตาราง ตัวอย่างเช่น:
ตอนนี้ ฉันไม่แน่ใจว่ามีกี่ตารางในฐานข้อมูลที่มีคีย์นอกใน X เช่น ตาราง Y และ Z มีคิวรี SQL ที่ฉันสามารถใช้เพื่อรับผลลัพธ์เหล่านี้หรือไม่
[code]CREATE TABLE `X` (
`X_id` int NOT NULL auto_increment,
`name` varchar(255) NOT NULL,
PRIMARY KEY (`X_id`)
)
CREATE TABLE `Y` (
`Y_id` int(11) NOT NULL auto_increment,
`name` varchar(255) NOT NULL,
`X_id` int DEFAULT NULL,
PRIMARY KEY (`Y_id`),
CONSTRAINT `Y_X` FOREIGN KEY (`X_id`) REFERENCES `X` (`X_id`)
)
CREATE TABLE `Z` (
`Z_id` int(11) NOT NULL auto_increment,
`name` varchar(255) NOT NULL,
`X_id` int DEFAULT NULL,
PRIMARY KEY (`Z_id`),
CONSTRAINT `Z_X` FOREIGN KEY (`X_id`) REFERENCES `X` (`X_id`)
)
[/code]รายการของตารางที่มีคีย์นอกเป็น X รวมถึงตารางใดที่มีค่าในคีย์นอก
คู่มืออ้างอิง MySQL 5.5: "ข้อจำกัดของ InnoDB และ FOREIGN KEY"
http://dev.mysql.com/doc/refman/5.5/en/innodb-foreign-key-constraints.html
หนึ่งใน [บทความ
https://www.scaler.com/topics/sql/foreign-key-in-sql/ ที่ฉันอ่านได้เสนอตัวอย่างฐานข้อมูลจำนวนมากที่มีชื่อตาราง/คอลัมน์เหมือนกัน แต่จำกัดการสืบค้นไว้ที่ฐานข้อมูลเดียว:
ค้นหาตารางทั้งหมดที่มีคีย์ต่างประเทศ
ฉันมีตารางที่ใช้คีย์หลักเป็นคีย์นอกในตารางอื่นๆ หลายตาราง ตัวอย่างเช่น:
ตอนนี้ ฉันไม่แน่ใจว่ามีกี่ตารางในฐานข้อมูลที่มีคีย์นอกใน X เช่น ตาราง Y และ Z มีคิวรี SQL ที่ฉันสามารถใช้เพื่อรับผลลัพธ์เหล่านี้หรือไม่
[code]CREATE TABLE `X` (
`X_id` int NOT NULL auto_increment,
`name` varchar(255) NOT NULL,
PRIMARY KEY (`X_id`)
)
CREATE TABLE `Y` (
`Y_id` int(11) NOT NULL auto_increment,
`name` varchar(255) NOT NULL,
`X_id` int DEFAULT NULL,
PRIMARY KEY (`Y_id`),
CONSTRAINT `Y_X` FOREIGN KEY (`X_id`) REFERENCES `X` (`X_id`)
)
CREATE TABLE `Z` (
`Z_id` int(11) NOT NULL auto_increment,
`name` varchar(255) NOT NULL,
`X_id` int DEFAULT NULL,
PRIMARY KEY (`Z_id`),
CONSTRAINT `Z_X` FOREIGN KEY (`X_id`) REFERENCES `X` (`X_id`)
)
[/code]รายการของตารางที่มีคีย์นอกเป็น X รวมถึงตารางใดที่มีค่าในคีย์นอก
คู่มืออ้างอิง MySQL 5.5: "ข้อจำกัดของ InnoDB และ FOREIGN KEY" http://dev.mysql.com/doc/refman/5.5/en/innodb-foreign-key-constraints.html
หนึ่งใน [บทความ https://www.scaler.com/topics/sql/foreign-key-in-sql/ ที่ฉันอ่านได้เสนอตัวอย่างฐานข้อมูลจำนวนมากที่มีชื่อตาราง/คอลัมน์เหมือนกัน แต่จำกัดการสืบค้นไว้ที่ฐานข้อมูลเดียว: