Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mewujudkan Kekangan Utama Asing dalam Pelayan SQL?

Bagaimana untuk Mewujudkan Kekangan Utama Asing dalam Pelayan SQL?

Mary-Kate Olsen
Lepaskan: 2025-01-01 12:40:11
asal
1013 orang telah melayarinya

How to Establish Foreign Key Constraints in SQL Server?

Mewujudkan Kekangan Utama Asing dalam Pelayan SQL

Mengekalkan integriti data adalah penting dalam mana-mana sistem pangkalan data. SQL Server menyediakan keupayaan untuk menguatkuasakan perhubungan antara jadual menggunakan kekangan kunci asing. Walau bagaimanapun, pengisytiharan kunci asing berbeza daripada sistem pengurusan pangkalan data lain seperti PostgreSQL.

Sintaks dan Pertimbangan

Berikut ialah cara mencipta kunci asing dalam SQL Server:

ALTER TABLE <child_table>
ADD CONSTRAINT <constraint_name>
FOREIGN KEY (<child_column>)
REFERENCES <parent_table>(<parent_column>)
Salin selepas log masuk

Pastikan bilangan lajur rujukan dalam jadual anak sepadan dengan bilangan lajur lajur yang dirujuk dalam jadual induk. Jika tidak, anda akan menghadapi ralat yang serupa dengan:

Msg 8139, Level 16, State 0, Line 9
Number of referencing columns in foreign key differs from number of referenced columns, table 'question_bank'.
Salin selepas log masuk

Penyelesaian Masalah: Sintaks Salah

Kod SQL yang disediakan untuk mencipta jadual question_bank mempunyai ralat. Lajur question_exam_id dalam jadual bank_soalan hendaklah merujuk kepada lajur exam_id dalam jadual peperiksaan.

create table question_bank
(
    question_id uniqueidentifier primary key,
    question_exam_id uniqueidentifier not null, <!-- This should be a foreign key -->
    question_text varchar(1024) not null,
    question_point_value decimal,
    constraint question_exam_id foreign key references exams(exam_id)
);
Salin selepas log masuk

Sintaks Ganti: Menambah Kekangan Kemudian

Anda juga boleh mencipta kunci asing kekangan selepas mencipta jadual anak menggunakan ALTER TABLE pernyataan:

alter table question_bank
add constraint question_exam_id_fk foreign key (question_exam_id) references exams(exam_id)
Salin selepas log masuk

Kaedah ini membolehkan anda mentakrifkan kekangan secara berasingan daripada penciptaan jadual, memberikan lebih fleksibiliti dan kawalan ke atas skema pangkalan data.

Atas ialah kandungan terperinci Bagaimana untuk Mewujudkan Kekangan Utama Asing dalam Pelayan SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan