Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

MySQL JATUHKAN KENDALA UNIK

Unique Constraint memungkinkan Anda untuk menerapkan keunikan record di tabel database Anda dan menjaga integritas database. Berikut cara menghilangkan batasan unik dari tabel MySQL menggunakan perintah MySQL DROP INDEX. Ini juga digunakan untuk menghapus kunci unik di MySQL.

Apa itu Unique Constraint di MySQL?

Batasan unik untuk tabel adalah kombinasi dari satu atau beberapa bidang yang secara unik mendefinisikan setiap catatan dalam tabel. Bidang ini dapat berisi nilai nol selama kombinasi nilai bidang unik.

Bonus Baca :JATUHKAN KENDALA KY ASING

Cara Menghilangkan Batasan Unik di MySQL

Berikut adalah langkah-langkah untuk menghilangkan batasan unik di MySQL. Kami akan menggunakan kueri MySQL DROP INDEX untuk menghapus indeks yang ada dari tabel.

Berikut sintaks perintah MySQL DROP INDEX

DROP INDEX constraint_name ON table_name
[algorithm_option | lock_option];

Dalam kueri di atas, constraint_name adalah nama kendala, dan nama_tabel adalah nama tabel database Anda.

Harap diperhatikan , apakah Anda ingin DROP INDEX atau DROP UNIQUE CONSTRAINT, Anda perlu menggunakan kueri DROP INDEX.

Bonus Baca :MySQL DROP DATABASE

Anda juga dapat memberikan 2 argumen opsional – algorithm_option dan lock_option.

algorithm_option dapat memiliki salah satu dari 3 nilai – default, inplace, copy. Bergantung pada argumen Anda, MySQL akan menggunakan algoritme yang berbeda untuk menghilangkan batasan unik.

Sintaksnya adalah

ALGORITHM [=] {DEFAULT|INPLACE|COPY}
  • default – Ini memiliki efek yang sama seperti tidak menggunakan algorithm_option argumen
  • salin – Tabel di mana Anda perlu menghapus batasan, akan disalin dan indeks akan dihapus dari tabel salin. Selama waktu ini, operasi bersamaan seperti INSERT dan UPDATE tidak diizinkan.
  • di tempat – Dalam hal ini, tabel dibangun kembali di tempatnya tanpa kendala. Meskipun opsi ini memungkinkan operasi bersamaan, opsi ini menempatkan kunci metadata selama eksekusi.

Tergantung pada lock_option MySQL akan mengunci/tidak mengunci akses baca/tulis ke tabel Anda saat batasan sedang dihapus. lock_option memiliki sintaks berikut

LOCK [=] {DEFAULT|NONE|SHARED|EXCLUSIVE}

Dibutuhkan 4 nilai:

  • default – memungkinkan konkurensi maksimum untuk algoritme pilihan Anda. itu memungkinkan membaca dan menulis secara bersamaan jika didukung. Jika tidak, ini hanya memungkinkan pembacaan bersamaan. Jika itu juga tidak didukung, itu memberlakukan akses eksklusif.
  • none – jika didukung, Anda dapat membaca dan menulis secara bersamaan. Jika tidak, MySQL memberikan kesalahan.
  • dibagikan – jika opsi bersama didukung, Anda dapat membaca secara bersamaan, tetapi tidak menulis secara bersamaan.
  • eksklusif – opsi ini memberlakukan akses eksklusif

Bonus Baca :MySQL DROP COLUMN

Contoh MySQL DROP UNIQUE CONSTRAINT

Katakanlah Anda memiliki tabel berikut dengan batasan unik.

mysql> create table orders(order_id int primary key,
     order_date date,
     product varchar(255),
     sale int,
     constraint name unique (product)
     );

Inilah kueri SQL untuk menghapus batasan unik nama dari tabel pesanan .

mysql> DROP INDEX name ON orders;

Bonus Baca :MySQL DROP TABLE

MySQL DROP PRIMARY KEY Index

Karena kunci utama juga merupakan contoh batasan unik pada tabel, berikut adalah sintaks untuk menghapus batasan kunci utama pada urutan tabel.

mysql> DROP INDEX `PRIMARY` ON orders;

Dalam hal ini kami merujuk bidang kunci utama sebagai `PRIMARY` alih-alih menggunakan nama bidang.

Ubiq memudahkan untuk memvisualisasikan data dalam hitungan menit, dan memantau di dasbor waktu nyata. Cobalah Hari ini!

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Instal mysql-python (Windows)

  2. Apa arti sebenarnya dari kumpulan karakter dan susunan?

  3. Daftar SELECT tidak ada dalam klausa GROUP BY dan berisi kolom nonagregated .... tidak kompatibel dengan sql_mode=only_full_group_by

  4. Bagaimana saya bisa membuat penginstal untuk situs web. PHP mysql

  5. MySQL LOAD DATA INFILE dengan ON DUPLICATE KEY UPDATE