אויב איר זוכט צו לערנען שאַפֿן SQL פרעמדן שליסל, איר האָט אנגעקומען אין די רעכט אָרט. א פרעמד שליסל אין סקל איז אַ פעלד אָדער גאַנג פון פעלדער אין איין טיש וואָס רעפֿערענץ די ערשטיק שליסל אין אן אנדער טיש. דאָס מאכט עס מעגלעך צו פאַרלייגן אַ שייכות צווישן ביידע טישן, וואָס איז יקערדיק צו האַלטן די אָרנטלעכקייַט פון די דאַטן אין אַ ריליישאַנאַל דאַטאַבייס. ווייַטער, מיר וועלן ווייַזן איר ווי צו שאַפֿן אַ פרעמד שליסל אין SQL אויף אַ פּשוט און עפעקטיוו וועג.
- שריט דורך שריט ➡️ שאַפֿן SQL פרעמד שליסל
- שריט 1: ערשטער, איידער קריייטינג אַ פרעמד שליסל אין SQL, עס איז וויכטיק צו ידענטיפיצירן די טישן און שפאלטן וואָס וועט זיין קאָננעקטעד.
- שריט 2: אַמאָל די טישן און שפאלטן זענען יידענאַפייד, דער פרעמד שליסל איז באשאפן ניצן די פאלגענדע SQL באַפֿעל: ALTER TABLE [Destination_table] ADD CONSTRAINT [פרעמד_קיי_נאַמע] פרעמד שליסל ([דעסטינאַטיאָן_קאָלאָם]) רעפערענצן [מקור_טאַבלע]([מקור_קאָלום]);
- שריט 3: עס איז וויכטיק צו ענשור אַז די דאַטן אין די פרעמד שליסל זייַל גלייַכן די דאַטן אין די רעפערענסינג זייַל.
- שריט 4: אויב נייטיק, קלאָזיז אַזאַ ווי ON DELETE און ON UPDATE צו ספּעציפיצירן די נאַטור פון די פרעמד שליסל ווען אַ רעקאָרד אין די מקור טיש איז אויסגעמעקט אָדער דערהייַנטיקט.
- שריט 5: צום סוף, אַמאָל דער פרעמד שליסל איז באשאפן, זיין עקזיסטענץ קענען זיין וועראַפייד מיט דעם באַפֿעל SHOW CREATE TABLE [טאַבלע_נאָמען];
פֿראַגעס און ענטפֿערס
וואָס איז אַ פרעמד שליסל אין SQL?
- א פרעמד שליסל איז אַ פעלד אין אַ טיש וואָס איז שייך צו די ערשטיק שליסל פון אן אנדער טיש.
- עס איז געניצט צו פאַרלייגן אַ שייכות צווישן צוויי טישן אין אַ ריליישאַנאַל דאַטאַבייס.
פארוואס איז עס וויכטיק צו שאַפֿן אַ פרעמד שליסל אין SQL?
- דער פרעמד שליסל ינשורז די רעפערענטשאַל אָרנטלעכקייַט פון דאַטן צווישן טישן.
- עס אַלאַוז צו האַלטן דאַטן קאָנסיסטענסי און ויסמיידן פּראָבלעמס אַזאַ ווי אָרפאַנד דאַטן אָדער ינגקאַנסיסטענסיז.
ווי טאָן איר שאַפֿן אַ פרעמד שליסל אין SQL?
- ערשטער, ידענטיפיצירן די פעלד וואָס וועט שפּילן ווי דער פרעמד שליסל אין די טיש.
- דערנאָך ספּעציפיצירן די טיש און פעלד וואָס דער פרעמד שליסל וועט דערמאָנען.
- צום סוף, נוצן די ALTER TABLE ויסזאָגונג צו לייגן די פרעמד שליסל צו די טיש.
וואָס איז דער סינטאַקס פֿאַר קריייטינג אַ פרעמד שליסל אין SQL?
- ALTER TABLE nombre_tabla
- ADD CONSTRAINT foreign_key_name FOREIGN KEY (זייַל) REFERENCES referenced_table(referenced_column);
וואָס בענעפיץ אָפפערס די נוצן פון פרעמד שליסלען אין SQL?
- ימפּרוווז די אָרנטלעכקייַט און קאָנסיסטענסי פון דאַטן אין די דאַטאַבייס.
- עס פאַסילאַטייץ דאַטאַבייס וישאַלט דורך אַוווידינג דאַטן דופּליקיישאַן און רעפֿערענץ ערראָרס.
קענען פרעמד שליסלען זיין מאַדאַפייד אָדער אויסגעמעקט אין SQL?
- יאָ, פרעמד שליסלען קענען זיין מאַדאַפייד אָדער אויסגעמעקט מיט די ALTER TABLE ויסזאָגונג.
- צו מאָדיפיצירן אַ פרעמד שליסל, איר נוצן די DROP ויסזאָגונג און דעמאָלט לייגן די נייַ פרעמד שליסל מיט די נייַע קאַנפיגיעריישאַן.
ווי זענען פרעמד שליסלען יידענאַפייד אין אַ סקל טיש?
- איר קענען ידענטיפיצירן פרעמד שליסלען אין אַ טיש דורך קאַנסאַלטינג די דעפֿיניציע פון די טיש אין די דאַטאַבייס פאַרוואַלטונג סיסטעם.
- די דעפֿיניציע וועט ווייַזן די פרעמד שליסלען מיט זייער נאָמען, די פֿאַרבונדן פעלד און די רעפעראַנסט טיש.
איז עס מעגלעך צו שאַפֿן אַ פרעמד שליסל וואָס ווייזט צו קייפל פעלדער אין אן אנדער טיש?
- יאָ, עס איז מעגלעך צו שאַפֿן אַ פרעמד שליסל וואָס ווייזט צו קייפל פעלדער אין אן אנדער טיש.
- איר מוזן דעפינירן די פרעמד שליסל ניצן אַ פעלד רשימה פֿאַר דער רעפֿערענץ אין די רעפעראַנסט טיש.
וואָס כאַפּאַנז אויב איך פּרובירן צו לייגן אַ פרעמד שליסל וואָס רעפערס צו אַ ניט-עגזיסטאַנט פעלד אין אן אנדער טיש?
- דער פרעמד שליסל שאַפונג אָפּעראַציע וועט פאַרלאָזן און ווייַזן אַ טעות אָנזאָג אַז די רעפעראַנסט פעלד איז נישט עקסיסטירט אין די דערמאנט טיש.
- איר מוזן ענשור אַז די פעלד איר ריפערד צו יגזיסץ אין די טיש איידער איר שאַפֿן די פרעמד שליסל.
קענען איך מאַכן אַ פרעמד שליסל אויף אַ ליידיק טיש אין SQL?
- יאָ, איר קענען שאַפֿן אַ פרעמד שליסל אויף אַ ליידיק טיש.
- די עקזיסטענץ פון דאַטן אין די טיש טוט נישט ווירקן די שאַפונג פון די פרעמד שליסל.
איך בין Sebastián Vidal, אַ קאָמפּיוטער ינזשעניר לייַדנשאַפטלעך וועגן טעכנאָלאָגיע און דיי. דערצו, איך בין דער באשעפער פון tecnobits.com, ווו איך טיילן טוטאָריאַלז צו מאַכן טעכנאָלאָגיע מער צוטריטלעך און פאַרשטיייק פֿאַר אַלעמען.