php - ejemplos - Constructor de esquemas: crea una tabla si no existe
tags input js (3)
Prueba esto
if (!Schema::hasTable(''tblCategory'')) {
// create the tblCategory table
}
Estoy utilizando el siguiente código en Schema Builder para crear la tabla.
Schema::create(''tblCategory'', function (Blueprint $table) {
$table->increments(''CategoryID'');
$table->string(''Category'', 40);
$table->unique(''Category'', ''tblCategory_UK_Category'');
$table->timestamps();
});
Aquí está el problema, si tengo que crear la nueva tabla, todos los scripts antiguos se ejecutan y muestran el error de que la tabla ya existe.
¿Hay alguna forma de crear una tabla si no existe utilizando el generador de esquemas?
Por favor verifica la respuesta aquí.
Para crear una nueva tabla, solo hay una comprobación por la función de hasTable
Laravel Schema hasTable
.
Pero si desea eliminar cualquier tabla antes de verificar su existencia, Schema tiene una función llamada dropIfExists
.
Schema::dropIfExists(''table_name'');
Se eliminará la tabla si la tabla existirá.
DB::transaction(function () {
// Create your table here with schema builder.
});
Si se produce una excepción dentro del cierre de la transacción, la transacción se retrotraerá automáticamente. Así que intentar crear una tabla ya existente arrojará un error. La mayoría de las transacciones de base de datos deberían tener este cierre en Laravel.