Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Membuat Kunci Asing dengan Betul dalam Pelayan SQL untuk Mengelakkan Ralat Tidak Padan Lajur?

Bagaimana untuk Membuat Kunci Asing dengan Betul dalam Pelayan SQL untuk Mengelakkan Ralat Tidak Padan Lajur?

DDD
DDDasal
2025-01-03 03:31:39588semak imbas

How to Correctly Create Foreign Keys in SQL Server to Avoid Column Mismatch Errors?

Mencipta Kunci Asing dalam Pelayan SQL

Apabila menguruskan pangkalan data hubungan dalam SQL Server, mencipta kunci asing boleh menjadi penting untuk memastikan integriti data. Tidak seperti platform SQL yang lain, SQL Server memerlukan pendekatan yang sedikit berbeza.

Dalam kod SQL yang disediakan, anda cuba membuat kekangan kunci asing dalam jadual bank_soalan, merujuk lajur exam_id dalam jadual peperiksaan. Walau bagaimanapun, ralat yang anda hadapi menunjukkan percanggahan dalam bilangan lajur rujukan dan rujukan.

Untuk membetulkan isu ini, pastikan lajur dalam perhubungan kunci asing sepadan dengan tepat. Dalam kod anda, lajur question_exam_id dalam question_bank hendaklah merujuk hanya lajur exam_id dalam peperiksaan.

Kod Disemak:

create table exams
(
    exam_id uniqueidentifier primary key,
    exam_name varchar(50),
);
create table question_bank
(
    question_id uniqueidentifier primary key,
    question_exam_id uniqueidentifier not null,
    question_text varchar(1024) not null,
    question_point_value decimal,
    constraint question_exam_id foreign key (question_exam_id) references exams(exam_id)
);

Dengan menjajarkan lajur dalam bahasa asing hubungan utama, anda boleh membuat kekangan yang sah yang mengekalkan integriti rujukan antara bank_soalan dan peperiksaan meja.

Atas ialah kandungan terperinci Bagaimana untuk Membuat Kunci Asing dengan Betul dalam Pelayan SQL untuk Mengelakkan Ralat Tidak Padan Lajur?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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