Rumah  >  Artikel  >  pangkalan data  >  Apakah cara untuk menambah kunci asing dalam Mysql?

Apakah cara untuk menambah kunci asing dalam Mysql?

WBOY
WBOYke hadapan
2023-05-29 17:10:487033semak imbas

Beberapa cara untuk menambah kunci asing dalam Mysql

Nota: Menambah kunci asing ialah menambah daripada jadual (iaitu jadual anak)
Jadual induk ialah Jadual Utama

Kaedah 1:

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) 	
  );

Kaedah 2:

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:

1 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.

Perbezaan antara menambah kekangan dan tidak menambahnya

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

1. tunjukkan nama jadual cipta;

Apakah cara untuk menambah kunci asing dalam Mysql?2 Lihat kekangan;

Apakah cara untuk menambah kunci asing dalam Mysql?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!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam