Я получаю сообщение об ошибке в Eclipse после установки плагина Groovy

  1. Чтобы усечь таблицу, нужно отбросить ограничения внешнего ключа, сопоставленные столбцам в этой таблице, из других таблиц (фактически, во всех таблицах в конкретном DB / Schema).
  2. Таким образом, все ограничения внешнего ключа должны быть сначала удалены, а затем усечение таблицы.
  3. Необязательно используйте таблицу оптимизации (в mysql, innodb engine esp) для восстановления используемого пространства данных / размер до ОС после усечения данных.
  4. Как только выполняется усечение данных, снова создайте те же ограничения внешнего ключа в той же таблице. Ниже приведен скрипт, который будет генерировать сценарий для выполнения вышеуказанных операций.
    SELECT CONCAT('ALTER TABLE ',TABLE_SCHEMA,'.',TABLE_NAME,' DROP FOREIGN KEY ',CONSTRAINT_NAME,';') FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
    WHERE CONSTRAINT_TYPE='FOREIGN KEY' AND TABLE_SCHEMA='<TABLE SCHEMA>'
    UNION
    SELECT CONCAT('TRUNCATE TABLE ',TABLE_SCHEMA,'.',TABLE_NAME,';') FROM INFORMATION_SCHEMA.TABLES
    WHERE TABLE_SCHEMA='<TABLE SCHEMA>' AND TABLE_TYPE='BASE TABLE'
    UNION
    SELECT CONCAT('OPTIMIZE TABLE ',TABLE_SCHEMA,'.',TABLE_NAME,';') FROM INFORMATION_SCHEMA.TABLES
    WHERE TABLE_SCHEMA='<TABLE SCHEMA>' AND TABLE_TYPE='BASE TABLE'
    UNION
    SELECT CONCAT('ALTER TABLE ',TABLE_SCHEMA,'.',TABLE_NAME,' ADD CONSTRAINT ',CONSTRAINT_NAME,' FOREIGN KEY(',COLUMN_NAME,')',' REFERENCES ',REFERENCED_TABLE_NAME,'(',REFERENCED_COLUMN_NAME,');') FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
    WHERE CONSTRAINT_NAME LIKE 'FK%' AND TABLE_SCHEMA='<TABLE SCHEMA>'
    INTO OUTFILE "C:/DB Truncate.sql" LINES TERMINATED BY '\n';
    

Теперь запустите созданный скрипт Db Truncate.sql

. 1) Восстановить дисковое пространство 2) Не требуется, чтобы сбросить и воссоздать DB / Schema с той же структурой

Недостатки. 1) Ограничения FK должны быть именами в таблице с именем, содержащим «FK» в имени ограничения.

0
задан emilles 19 January 2019 в 12:41
поделиться

1 ответ

Это проблема, которую вы видите: https://github.com/groovy/groovy-eclipse/issues/317#issuecomment-316430547

Это можно решить, удалив более новые версии Groovy компилятора. В вашем случае вы хотите использовать Groovy 2.4, поэтому удалите 2.5 и 2.6 / 3.0 (если они у вас установлены).

0
ответ дан emilles 19 January 2019 в 12:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: