Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk memadam hubungan kunci asing dalam mysql

Bagaimana untuk memadam hubungan kunci asing dalam mysql

青灯夜游
青灯夜游asal
2022-07-01 20:01:2010299semak imbas

Dalam mysql, anda boleh menggunakan pernyataan ALTER TABLE dengan kata kunci DROP untuk memadamkan hubungan kunci asing (kekangan) ialah "ALTER TABLE nama jadual data DROP FOREIGN KEY nama kekangan asing;" "ALTER PERNYATAAN JADUAL" Ia digunakan untuk mengubah suai jadual (menukar struktur jadual asal). Selepas menambah pernyataan "DROP FOREIGN KEY", fungsi pengubahsuaian dihadkan kepada memadamkan hubungan kunci asing (kekangan).

Bagaimana untuk memadam hubungan kunci asing dalam mysql

Persekitaran pengendalian tutorial ini: sistem windows7, versi mysql8, komputer Dell G3.

Hubungan kunci asing (kekangan kunci asing) ialah medan khas jadual, sering digunakan bersama dengan kekangan kunci utama. Untuk dua jadual dengan perhubungan yang berkaitan, jadual tempat kunci utama dalam medan yang berkaitan terletak ialah jadual utama (jadual induk), dan jadual tempat kunci asing terletak ialah jadual kedua (jadual anak).

Kunci asing digunakan untuk mewujudkan hubungan antara jadual induk dan jadual hamba, mewujudkan sambungan untuk data dalam dua jadual, dan mengekang ketekalan dan integriti data dalam dua jadual. Sebagai contoh, sebuah gerai buah hanya mempunyai empat jenis buah: epal, pic, plum, dan tembikai Kemudian, apabila anda datang ke gerai buah-buahan untuk membeli buah-buahan, anda hanya boleh memilih epal, pic, plum, dan buah-buahan lain tidak tersedia untuk pembelian.

Apabila rekod dipadamkan daripada jadual utama, rekod yang sepadan daripada jadual juga mesti ditukar sewajarnya. Sesuatu jadual boleh mempunyai satu atau lebih kunci asing, dan kunci asing boleh menjadi batal Jika ia tidak batal, nilai setiap kunci asing mestilah sama dengan nilai tertentu kunci utama dalam jadual utama.

Apabila kekangan kunci asing tidak lagi diperlukan dalam jadual, ia perlu dipadamkan daripada jadual. Sebaik sahaja kunci asing dipadamkan, perkaitan antara jadual induk dan jadual hamba akan dikeluarkan.

Jadi bagaimana untuk memadamkan hubungan kunci asing (kekangan) dalam mysql?

Dalam mysql, anda boleh menggunakan pernyataan ALTER TABLE dengan kata kunci DROP untuk memadamkan hubungan kunci asing (kekangan).

Format sintaks untuk memadamkan kekangan kunci asing adalah seperti berikut:

ALTER TABLE 数据表名 DROP FOREIGN KEY 外键约束名;
  • Pernyataan ALTER TABLE digunakan untuk menukar struktur jadual asal, seperti menambah atau memadamkan lajur , menukar jenis lajur asal, menamakan semula lajur atau jadual, dsb.

  • DROP FOREIGN KEY statement digunakan untuk memadamkan hubungan kunci asing

Contoh:

Gunakan Pernyataan berikut untuk melihat kekangan kunci asing bagi jadual data tb_emp2:

SHOW CREATE TABLE tb_emp2\G
mysql> SHOW CREATE TABLE tb_emp2\G
*************************** 1. row ***************************
       Table: tb_emp2
Create Table: CREATE TABLE `tb_emp2` (
  `id` int(11) NOT NULL,
  `name` varchar(30) DEFAULT NULL,
  `deptId` int(11) DEFAULT NULL,
  `salary` float DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `fk_tb_dept1` (`deptId`),
  CONSTRAINT `fk_tb_dept1` FOREIGN KEY (`deptId`) REFERENCES `tb_dept1` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312
1 row in set (0.12 sec)

Bagaimana untuk memadam hubungan kunci asing dalam mysql

Padamkan kekangan kunci asing fk_tb_dept1

ALTER TABLE tb_emp2 DROP FOREIGN KEY fk_tb_dept1;
dalam jadual data tb_emp2
mysql> ALTER TABLE tb_emp2
    -> DROP FOREIGN KEY fk_tb_dept1;
Query OK, 0 rows affected (0.19 sec)
Records: 0  Duplicates: 0  Warnings: 0

Bagaimana untuk memadam hubungan kunci asing dalam mysql

Bagaimana untuk memadam hubungan kunci asing dalam mysql

[Cadangan berkaitan: tutorial video mysql]

Atas ialah kandungan terperinci Bagaimana untuk memadam hubungan kunci asing dalam mysql. 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