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

Cara menghapus dari Tabel tanpa harus menjatuhkan batasan

Karena kunci asing ke tabel PRODUCT Anda tidak menentukan ON DELETE tindakan, itu akan memiliki perilaku default yaitu RESTRICT . Karena Anda tidak dapat memperbarui batasan ini ke SET NULL , Anda mungkin harus menyetelnya sendiri NULL.

Pertama, ubah tabel sehingga kunci asing SUPPLIER_NAME dapat menerima nilai NULL.

Kemudian, perbarui PRODUCTS yang pemasoknya berada di AS, setel SUPPLIER_NAME mereka ke NULL. Sesuatu seperti ini:

update PRODUCT set SUPPLIER_NAME = NULL where SUPPLIER_NAME IN (
select SUPPLIER_NAME from SUPPLIER where COUNTRY = 'USA');

Dan akhirnya Anda dapat menghapus PEMASOK dengan COUNTRY ='USA'.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. aplikasi java, utas hang setelah mematikan koneksi MySQL

  2. 1000+ panggilan API dengan 1 tugas cron?

  3. Mysql:Memilih nilai di antara dua kolom

  4. Bagaimana cara menggunakan nilai pengembalian dari satu tugas di tugas lain untuk host yang berbeda secara memungkinkan

  5. sql:pilih item yang paling banyak dipilih dari setiap pengguna