เราสามารถเพิ่มคีย์ต่างประเทศสองคีย์ในตารางได้หรือไม่?
เราสามารถเพิ่มคีย์ต่างประเทศสองคีย์ในตารางได้หรือไม่?

วีดีโอ: เราสามารถเพิ่มคีย์ต่างประเทศสองคีย์ในตารางได้หรือไม่?

วีดีโอ: เราสามารถเพิ่มคีย์ต่างประเทศสองคีย์ในตารางได้หรือไม่?
วีดีโอ: Ep.1 สอน Link ข้อมูลต่าง Sheet ให้อัพเดตอัตโนมัติ 2024, พฤศจิกายน
Anonim

ใช่ MySQL อนุญาตสิ่งนี้ คุณสามารถ มี กุญแจต่างประเทศหลายตัว เหมือนกัน ตาราง . NS กุญแจต่างประเทศ ในสคีมาของคุณ (ใน Account_Name และ Account_Type) ทำ ไม่ต้องการการดูแลหรือวากยสัมพันธ์พิเศษใดๆ ดูเหมือนว่าอย่างน้อย หนึ่ง ของกรณีเหล่านี้ใช้กับคอลัมน์ ID และ Name ใน Customer ตาราง.

ในทำนองเดียวกัน เราสามารถมีคีย์นอกสองคีย์ในตารางได้หรือไม่

NS ตาราง อาจ มีกุญแจต่างประเทศหลายตัว และแต่ละ กุญแจต่างประเทศสามารถมีได้ ผู้ปกครองคนอื่น ตาราง . แต่ละ กุญแจต่างประเทศ ถูกบังคับใช้อย่างอิสระโดยระบบฐานข้อมูล ดังนั้นความสัมพันธ์แบบเรียงซ้อนระหว่าง ตารางสามารถ จัดตั้งขึ้นโดยใช้ กุญแจต่างประเทศ.

นอกเหนือจากข้างต้น ตารางสามารถมีคีย์ภายนอกใน Oracle ได้กี่คีย์ NS ตาราง กับ ต่างชาติ คีย์อ้างอิงถึงตัวเองยังคงจำกัดอยู่ที่ 253 ต่างชาติ ข้อมูลอ้างอิงที่สำคัญ มากกว่า 253 ต่างชาติ การอ้างอิงคีย์ไม่สามารถใช้ได้ในขณะนี้สำหรับดัชนี columnstore, หน่วยความจำที่ปรับให้เหมาะสม โต๊ะ , ขยายฐานข้อมูล หรือ แบ่งพาร์ติชั่น ต่างชาติ กุญแจ โต๊ะ.

ต่อมาอาจมีคนถามอีกว่า โต๊ะหนึ่งสามารถมีกุญแจได้กี่อัน?

สำหรับหนึ่งคอลัมน์ คุณสามารถมีคีย์ต่างประเทศได้มากถึง 16 คีย์ สำหรับหนึ่งตาราง จำนวนที่แนะนำในปัจจุบันคือ 253 แม้ว่าคุณจะถูกจำกัด (บังคับ) จากปัญหาด้านประสิทธิภาพก่อนที่คุณจะถึงจำนวนนั้น

คีย์ต่างประเทศสามารถมีค่าซ้ำกันได้หรือไม่?

ไม่เหมือนประถม กุญแจ , กุญแจต่างประเทศสามารถ บรรจุ ค่าที่ซ้ำกัน . นอกจากนี้ยังเป็นเรื่องปกติสำหรับพวกเขาที่มี NULL ค่า . ดัชนีไม่ได้ถูกสร้างขึ้นโดยอัตโนมัติสำหรับ กุญแจต่างประเทศ ; อย่างไรก็ตาม ในฐานะ DBA คุณ สามารถ กำหนดพวกเขา ตารางได้รับอนุญาตให้มีมากกว่าหนึ่ง กุญแจต่างประเทศ.