האם מפתח זר יכול להתייחס למפתח זר אחר?
האם מפתח זר יכול להתייחס למפתח זר אחר?

וִידֵאוֹ: האם מפתח זר יכול להתייחס למפתח זר אחר?

וִידֵאוֹ: האם מפתח זר יכול להתייחס למפתח זר אחר?
וִידֵאוֹ: Primary & Foreign Keys 2024, נוֹבֶמבֶּר
Anonim

1 תשובה. א מפתח זר יכול להתייחס כל שדה המוגדר כייחודי. אם אותו שדה ייחודי מוגדר בעצמו כ-a מפתח זר , זה לא משנה. אם זה תחום ייחודי, זה פחית גם להיות המטרה של אַחֵר FK.

כאן, האם מפתח זר יכול להתייחס למפתח ייחודי?

יְסוֹדִי מפתחות תמיד צריך להיות ייחודי , מפתחות זרים צריך לאפשר לא- ייחודי ערכים אם הטבלה היא מערכת יחסים של אחד לרבים. א מפתח זר אילוץ עושה לא חייב להיות מקושר רק ל-PRIMARY מַפְתֵחַ אילוץ בטבלה אחרת; זה פחית גם להיות מוגדר ל התייחסות העמודות של א ייחודי אילוץ בטבלה אחרת.

באופן דומה, האם למפתח זר יכול להיות שם אחר? לרוב, א מפתח זר מתייחס לראשוני מַפְתֵחַ שדה של הטבלה השנייה. ה מפתח זר השדה (CustomerNum) ושדה ההפניה (CustID) עשויים בעלי שמות שונים (או אותו הדבר שֵׁם ), אבל חייב יש אותם סוג נתונים ומגבלות שדה.

באופן דומה אפשר לשאול, האם מפתח זר יכול להתייחס לאותה טבלה?

מפתח זר אילוצים יכול להתייחס עמודה נוספת ב אותו שולחן . זה מכונה "עצמי" התייחסות . א מפתח זר אילוץ שצוין ברמת העמודה פחית רשום רק אחד התייחסות טור. עמודה זו חייבת לכלול את אותו סוג נתונים כעמודה שעליה מוגדר האילוץ.

האם ניתן לעדכן מפתח זר?

עם זאת, אם ה עדכון הכלל הוא NO ACTION, הורה ייחודי מפתחות יכולים לִהיוֹת מְעוּדכָּן כל עוד לכל ילד יש הורה מַפְתֵחַ עד שה עדכון ההצהרה מסתיימת. לא אפס עדכון ערך של א מפתח זר חייב להיות שווה לערך של הראשוני מַפְתֵחַ של טבלת האב של מערכת היחסים.

מוּמלָץ: