Closed gjaryczewski closed 3 years ago
Hi gjaryczewski ,
Thanks for your time posting feedback and bug report.
Unfortunately, I don't have any Windows machine to reproduce this issue. This starter were tested under MacOS and Linux. If you have standard MySQL 5.7x database with standard setup - fixtures are working fine.
To run fixtures Yii first disable all foreign keys check to clean up tables before loading data. From the error provided I can suppose that configuration of your DB/user permissions do not allow to perform this operation.
If you find out what the problem is - give me a shot or a Pull Request how to improve it to make it works on Windows as well.
When running yii fixture/load User, I received that messages with the error inside. (The error text is translated from Polish, so sorry for unintentional misleading).
C:\Users\gjaryczewski\Documents\yii2-starter>php yii fixture/load User Fixtures namespace is: app\fixtures
Global fixtures will be used:
Fixtures below will be loaded:
Be aware that: Applying leads to purging of certain data in the database!
Load above fixtures? (yes|no) [no]:yes Exception 'yii\db\Exception' with message 'SQLSTATE[42501]: Insufficient privilege: 7 ERROR: access denied: "RI_ConstraintTrigger_c_16472" is a system trigger The SQL being executed was: ALTER TABLE "public"."auth_assignment" DISABLE TRIGGER ALL; ALTER TABLE "public"."auth_item" DISABLE TRIGGER ALL; ALTER TABLE "public"."auth_item_child" DISABLE TRIGGER ALL; ALTER TABLE "public"."auth_rule" DISABLE TRIGGER ALL; ALTER TABLE "public"."migration" DISABLE TRIGGER ALL; ALTER TABLE "public"."settings" DISABLE TRIGGER ALL; ALTER TABLE "public"."user" DISABLE TRIGGER ALL; '
in C:\Users\gjaryczewski\Documents\yii2-starter\vendor\yiisoft\yii2\db\Schema.php:674
Error Info: Array ( [0] => 42501 [1] => 7 [2] => ERROR: access denied: "RI_ConstraintTrigger_c_16472" is a system trigger )
Stack trace:
0 C:\Users\gjaryczewski\Documents\yii2-starter\vendor\yiisoft\yii2\db\Command.php(1295): yii\db\Schema->convertException(Object(PDOException), 'ALTER TABLE "pu...')
1 C:\Users\gjaryczewski\Documents\yii2-starter\vendor\yiisoft\yii2\db\Command.php(1091): yii\db\Command->internalExecute('ALTER TABLE "pu...')
2 C:\Users\gjaryczewski\Documents\yii2-starter\vendor\yiisoft\yii2\test\InitDbFixture.php(99): yii\db\Command->execute()
3 C:\Users\gjaryczewski\Documents\yii2-starter\vendor\yiisoft\yii2\test\InitDbFixture.php(78): yii\test\InitDbFixture->checkIntegrity(false)
4 C:\Users\gjaryczewski\Documents\yii2-starter\vendor\yiisoft\yii2\test\FixtureTrait.php(117): yii\test\InitDbFixture->beforeUnload()
5 C:\Users\gjaryczewski\Documents\yii2-starter\vendor\yiisoft\yii2\console\controllers\FixtureController.php(158): yii\console\controllers\FixtureController->unloadFixtures(Array)
6 [internal function]: yii\console\controllers\FixtureController->actionLoad(Array)
7 C:\Users\gjaryczewski\Documents\yii2-starter\vendor\yiisoft\yii2\base\InlineAction.php(57): call_user_func_array(Array, Array)
8 C:\Users\gjaryczewski\Documents\yii2-starter\vendor\yiisoft\yii2\base\Controller.php(157): yii\base\InlineAction->runWithParams(Array)
9 C:\Users\gjaryczewski\Documents\yii2-starter\vendor\yiisoft\yii2\console\Controller.php(164): yii\base\Controller->runAction('load', Array)
10 C:\Users\gjaryczewski\Documents\yii2-starter\vendor\yiisoft\yii2\base\Module.php(528): yii\console\Controller->runAction('load', Array)
11 C:\Users\gjaryczewski\Documents\yii2-starter\vendor\yiisoft\yii2\console\Application.php(180): yii\base\Module->runAction('fixture/load', Array)
12 C:\Users\gjaryczewski\Documents\yii2-starter\vendor\yiisoft\yii2\console\Application.php(147): yii\console\Application->runAction('fixture/load', Array)
13 C:\Users\gjaryczewski\Documents\yii2-starter\vendor\yiisoft\yii2\base\Application.php(386): yii\console\Application->handleRequest(Object(yii\console\Request))
14 C:\Users\gjaryczewski\Documents\yii2-starter\yii(26): yii\base\Application->run()
15 {main}
main}