Mysql
 sql >> база данни >  >> RDS >> Mysql

Grails 2.4.4 DataSource create-drop не успява да премахне всички таблици с FK

За моя случай настройката на FK-проверките на 0 за MySQL (v5.5.25) реши това, въпреки че не съм напълно сигурен дали трябва да задам SET FOREIGN_KEY_CHECKS=0 изобщо.

Ако някой има по-добро решение, моля, споделете.

РЕДАКТИРАНЕ

Проблемът възникна поради това . Научен урок - Не трябва безсмислено да копирате и поставяте случаен код ~:-/

ОТГОВОР

Благодаря Бърт.

Ако DB се държи хаотично спрямо ddl операции. Винаги проверявайте ddl.sql генериран от grails schema-report , който в идеалния случай трябва да има следната структура

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. Функция MySQL LOG() – Връща естествения логаритъм на стойност

  2. MySQL REPLACE INTO на няколко клавиша?

  3. Извличане на резултат от един ред без итерация в цикъл от Mysql с помощта на Java

  4. MySQL:заявка с две много към много отношения и дубликати, с пълни данни от подзаявки

  5. Фатална грешка:Извикване на недефиниран метод mysqli_stmt::fetch_array()