Je reçois cette erreur en essayant d'enregistrer un objet dans dB.
SQLSTATE [HY000] [1049] Base de données inconnue 'Laravel' (SQL: Insert dans
cards
(card_price
,active
,updated_at
,created_at
) Valeurs (0, 1, 2019-10-10 15:14:43, 2019-10-10 15:14:43))
. env
DB_CONNECTION=mysql
DB_Host=127.0.0.1
DB_PORT=3306
DB_DATABASE=cardgame
DB_USERNAME=root
DB_PASSWORD=P@assword1!
base de données.php
'mysql' => [
'driver' => 'mysql',
'url' => env('DATABASE_URL'),
'Host' => env('DB_Host', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_T_PASSWORD', ''),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
'prefix' => '',
'prefix_indexes' => true,
'strict' => true,
'engine' => null,
'options' => extension_loaded('pdo_mysql') ? array_filter([
PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
]) : [],
],
cardcontroller.php
public function generateCards()
{
$card = new Card();
$card->card_price = 0;
$card->active = 1;
$card->save();
}
web.php
Route::get('/generate-cards', 'CardController@generateCards');
card.php
class Card extends Model
{
protected $guarded =[];
}
fichier de migration
public function up()
{
Schema::create('cards', function (Blueprint $table) {
$table->bigIncrements('id');
$table->integer('card_price');
$table->integer('active');
$table->timestamps();
});
}
J'ai essayé Effacer le cache et aussi avoir édité DB_PASSWORD
À DB_T_PASSWORD
Comme cela corrigeait un problème similaire plus tôt. Double vérifié le nom de db, mots de passe etc. et aussi d'autres projets sont déjà en cours d'exécution. Je ne suis pas capable de le comprendre.
J'ai eu le même problème et j'ai résolu ces étapes suivantes:
1) Arrêtez le serveur
2) RUN PHP Artisan config: Effacer .Cette ligne de commande supprimera bootstrap\cache\config.php fichier
) Démarrer le serveur et il devrait fonctionner bien maintenant