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

@Column(unique=true) sepertinya tidak berfungsi

unique=true elemen Column anotasi dan / atau UniqueConstraint anotasi yang dapat digunakan pada tingkat tabel digunakan untuk menetapkan bahwa batasan unik akan disertakan dalam DDL yang dihasilkan .

Dengan kata lain, mereka tidak melakukan apa pun selama runtime, verifikasi diserahkan ke database (yang masuk akal karena unicity tidak dapat diuji di tingkat Java dengan andal) dan jika karena alasan apa pun Anda tidak memiliki yang sesuai batasan yang ditentukan pada tingkat basis data, tidak akan terjadi apa-apa.

Tambahkan batasan secara manual:

ALTER TABLE Customer ADD CONSTRAINT customer_name_unq UNIQUE (name);

Lihat juga

Kecuali Anda memperoleh kunci tabel (aduh!), Anda tidak dapat memeriksa unicity dengan kueri SQL dalam lingkungan bersamaan.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mendapatkan metadata tabel di MySQL

  2. Beberapa pengiriman email dengan lampiran - repost

  3. mysql mengubah beberapa baris menjadi kolom dalam satu baris

  4. Fungsi MySql yang tidak digunakan lagi

  5. Cara Mendapatkan Sisa Menggunakan MOD() di PostgreSQL, MS SQL Server, dan MySQL