Я искал вопросы на форумах и форумах о том, как перенести изменения с increments()
на bigIncrements()
с использованием существующих таблиц.
Ошибка: SQLSTATE[HY000]: General error: 1833 Cannot change column 'id': used in a foreign key constraint 'account_users_acc_id_foreign' of table 'mydatabasename.account_users' (SQL: ALTER TABLE accounts CHANGE id id BIGINT UNSIGNED AUTO_INCREMENT NOT NULL)
Я знаю, что это из-за внешней таблицы, затем я попытался отключить ограничение, используя Schema::disableForeignKeyConstraints()
Ошибка: SQLSTATE[HY000]: General error: 1025 Error on rename of './mydatabasename/#sql-ea_201' to './mydatabasename/accounts' (errno: 150 - Foreign key constraint is incorrectly formed) (SQL: ALTER TABLE accounts CHANGE id id BIGINT UNSIGNED AUTO_INCREMENT NOT NULL)
в моей функции up()
:
Я также пытался изменить порядок циклов
Ошибка: SQLSTATE[HY000]: General error: 1832 Cannot change column 'acc_id': used in a foreign key constraint 'account_users_acc_id_foreign' (SQL: ALTER TABLE account_users CHANGE acc_id acc_id BIGINT UNSIGNED DEFAULT NULL, CHANGE app_user_id app_user_id BIGINT UNSIGNED NOT NULL, CHANGE approved_by approved_by BIGINT UNSIGNED DEFAULT NULL, CHANGE rejected_by rejected_by BIGINT UNSIGNED DEFAULT NULL)
Есть ли способ решить эту проблему?
Ссылки:
Доктрина DBAL: https://www.doctrine -project.org / projects / doctrine-dbal / en / 2.9 / reference / schema-manager. HTML