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

Apakah MySQL mengabaikan nilai nol pada batasan unik?

Ya, MySQL mengizinkan beberapa NULL dalam satu kolom dengan batasan unik.

CREATE TABLE table1 (x INT NULL UNIQUE);
INSERT table1 VALUES (1);
INSERT table1 VALUES (1);   -- Duplicate entry '1' for key 'x'
INSERT table1 VALUES (NULL);
INSERT table1 VALUES (NULL);
SELECT * FROM table1;

Hasil:

x
NULL
NULL
1

Ini tidak berlaku untuk semua database. SQL Server 2005 dan yang lebih lama, misalnya, hanya mengizinkan satu nilai NULL dalam kolom yang memiliki batasan unik.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Perbedaan antara SET autocommit=1 dan MULAI TRANSAKSI di mysql (Apakah saya melewatkan sesuatu?)

  2. Sintaks SQL DELETE – Didaftarkan oleh DBMS

  3. Menggunakan OpenVPN untuk Mengamankan Akses ke Cluster Basis Data Anda di Cloud

  4. MySQL mengonversi output timediff ke format hari, jam, menit, detik

  5. Bagaimana saya bisa memanipulasi relevansi pencarian teks lengkap MySQL untuk membuat satu bidang lebih 'berharga' daripada yang lain?