Ich möchte einige Daten in meine Datenbank einpflegen. Bisher funktioniert alles mit der "normalen" Datenbank.artisan db: seed --database funktioniert nicht
Jetzt möchte ich die gleichen Daten auf Saatgut (das gleiche Seeder) in eine andere Datenbank läuft. Also versuche ich den --database=
Befehl verwenden
php artisan db:seed --database=cb4test --class=TestDataTableSeeder -v
Aber das wird die Daten in die „normale“ Datenbank, nicht in dem angegebenen in cb4test
Saatgut. Was mache ich falsch?
Weitere Informationen:
Dies ist ein Teil meines config/database.php
:
'connections' => [
'couchbase' => [
'driver' => 'couchbase',
'host' => env('DB_HOST', 'localhost'),
'port' => env('DB_PORT', 8091),
'bucket' => env('DB_DATABASE'),
'username' => env('DB_USERNAME'),
'n1ql_hosts' => [
'http://'.env('DB_HOST', 'localhost').':8093'
]
],
'cb4test' => [
'driver' => 'couchbase',
'host' => env('DB_HOST', 'localhost'),
'port' => env('DB_PORT', 8091),
'bucket' => env('DB_TEST', 'msg4test'),
'username' => env('DB_USERNAME'),
'n1ql_hosts' => [
'http://'.env('DB_HOST', 'localhost').':8093'
]
],
In meinem .env
ich tue einen Eintrag für DB_TEST
auf den richtigen Couchbase-Eimer zeigt (in mysql, die eine mysql wären -Tabelle).
Immer noch, das funktioniert nicht. Ich habe eine Debug-Zeile in meinem TestDataTableSeeder.php
, die meine aktuell verwendete DB-Tabelle gibt und das ist die in der Standard-Verbindung (genannt couchbase) verwendet, nicht die in der Verbindung 'cb4test' verwendet.
Mit Laravel 5.4
Haben definieren Sie eine korrekte Verbindung zum cb4test Datenbank? –
Ja, eine Verbindung ist konfiguriert und funktioniert.Wenn ich in --database einen Tippfehler mache, erhalte ich einen Fehler, also schaut laravel in die 'config/database.php', wenn diese Verbindung vorhanden ist, aber sie wird sie nicht benutzen. – Paladin
Können Sie Proben von Seeder-Klassen teilen? Vielleicht definieren Sie eine bestimmte Datenbank in Seeder –