Rumah > Artikel > pangkalan data > Apakah cara untuk menambah kunci asing dalam Mysql?
Nota: Menambah kunci asing ialah menambah daripada jadual (iaitu jadual anak)
Jadual induk ialah Jadual Utama
Sebelum mencipta jadual:
KUNCI ASING (ID jadual anak) RUJUKAN nama jadual yang berkaitan (id Jadual induk asing)
Sebagai contoh
create table emp( e_id int auto_increment primary key, ename varchar(50) not null, age int, job varchar(20), salary int, entrydate date, managerid int, dept_id int, FOREIGN KEY (dept_id) REFERENCES dept(id) );
Selepas mencipta jadual, tambah:
UBAH JADUAL Jadual 1 TAMBAHKAN KUNCI ASING (Kunci asing jadual kedua) RUJUKAN bahagian (kunci utama jadual utama);
例如: ALTER TABLE emp ADD FOREIGN KEY (dep_id) REFERENCES dept(id);
Nota:
The jadual primer (dept) wujud dalam jadual kedua (emp), dan jadual sekunder (emp) wujud Jadual merujuk kunci asing dan tidak boleh dipadamkan secara langsung (jadual utama)
DOP TABLE dept --Delete gagal
Apabila memadam jadual, jika terdapat rujukan kunci asing, anda mesti memadamkannya daripada jadual (iaitu, memadam semua jadual dengan kekangan kunci asing yang berkaitan) sebelum jadual utama boleh dipadamkan.
Kunci asing di atas adalah semua kunci asing fizikal, yang merupakan rujukan peringkat pangkalan data dan tidak disyorkan Penggunaan ini akan meningkatkan tahap gandingan data.
Kunci utama:
secara unik mengenal pasti rekod itu tidak boleh diulang dan tidak dibenarkan kosong integriti
Kunci asing:
ialah kunci utama bagi jadual lain Kunci asing boleh mempunyai pendua atau nilai nol dan digunakan untuk menubuhkan dengan jadual lain. Oleh itu, jika kita bercakap tentang kunci asing, ia mesti melibatkan sekurang-kurangnya dua jadual.
Nota:
Perbezaan antara menambah kekangan dan tidak menambahnya1 Medan kunci asing harus benar-benar konsisten dengan jenis jadual utama (panjang, dll.) apabila ia dibuat. Jika tidak, ralat akan dilaporkan semasa mencipta kunci asing; 2. Jadual kunci asing tidak boleh memasukkan data yang tidak wujud dalam jadual utama kunci jadual utama atau kunci asing jadual kedua). –Sebagai contoh, jika nombor jabatan hanya 1, 2, 3, 4 dan nilai kunci asing ialah 5 apabila memasukkan data daripada jadual, ralat akan berlaku
——>Iaitu, kekangan kunci asing bagi jadual kunci asing tidak boleh ditetapkan sewenang-wenangnya
3 Apabila data jadual utama diubah suai, kekangan kunci asing bagi jadual kunci asing yang berkaitan telah diubah suai secara automatik.
Jika kekangan tidak ditambah, sistem akan menjana nama untuknya secara automatik, yang boleh menjadi sukar untuk diingati. Dengan menambah kekangan, anda boleh menamakan kekangan mengikut niat anda sendiri.
Tambahan: MySQL memadam operasi kunci asing
2 Lihat kekangan;
3. Satu cara untuk menulis semula ialah: Gunakan perintah alter table untuk memadamkan kekangan kunci asing dalam jadual Sintaks adalah seperti berikut: ALTER TABLE nama jadual DROP FOREIGN KEY nama kekangan;
Atas ialah kandungan terperinci Apakah cara untuk menambah kunci asing dalam Mysql?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!