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

Grails 2.4.4 DataSource create-drop gagal menghapus semua tabel yang memiliki FK

Untuk kasus saya, pengaturan FK-cek ke 0 untuk MySQL (v5.5.25) menyelesaikan ini, meskipun saya tidak sepenuhnya yakin apakah saya seharusnya SET FOREIGN_KEY_CHECKS=0 sama sekali.

Jika ada yang punya solusi yang lebih baik, silakan bagikan.

EDIT

Masalahnya dihadapi karena ini . Pelajaran yang didapat - Jangan menyalin-tempel kode acak tanpa berpikir ~:-/

JAWAB

Terima kasih Burt.

Jika DB berperilaku tidak menentu dengan operasi ddl w.r.t. Selalu periksa ddl.sql dihasilkan oleh grails schema-report , yang idealnya memiliki struktur berikut

alter table <Table> drop constraint <Constraint>
...

drop table if exists <Table>
...

create table <Table>(...)
...

create index <Index> ...   --(if any)
...

alter table <Table> add constraint <Constraint>
....



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Konversikan skrip MS SQL ke Mysql dan Oracle

  2. Susun ulang baris dalam tabel MySQL

  3. Dapatkan mysqldump untuk membuang data yang cocok untuk input psql (lolos dari tanda kutip tunggal)

  4. Permintaan MySQL yang cocok dengan dua bidang dan memiliki bidang lain yang sama

  5. Versi vs nomor Distribusi MySQL