fix foreign keys set CASCADE constraint

This commit is contained in:
amazuecos
2025-03-31 20:59:49 +02:00
parent f553641818
commit 432cc6be01

View File

@ -0,0 +1,44 @@
<?php
namespace App\Database\Migrations;
use CodeIgniter\Database\Migration;
use CodeIgniter\Database\RawSql;
class AlterForeignKeysOrdenTrabajoTareas extends Migration
{
public function up()
{
$this->forge->dropForeignKey('orden_trabajo_tareas','orden_trabajo_tareas_presupuesto_linea_id_foreign');
$this->forge->dropForeignKey('orden_trabajo_tareas','orden_trabajo_tareas_presupuesto_acabado_id_foreign');
$this->forge->dropForeignKey('orden_trabajo_tareas','orden_trabajo_tareas_presupuesto_encuadernado_id_foreign');
$this->forge->dropForeignKey('orden_trabajo_tareas','orden_trabajo_tareas_presupuesto_manipulado_id_foreign');
$this->forge->dropForeignKey('orden_trabajo_tareas','orden_trabajo_tareas_presupuesto_preimpresion_id_foreign');
$this->forge->dropForeignKey('orden_trabajo_tareas','orden_trabajo_tareas_presupuesto_extra_id_foreign');
$this->forge->addForeignKey("presupuesto_linea_id","presupuesto_linea","id",'CASCADE','CASCADE');
$this->forge->addForeignKey("presupuesto_acabado_id","presupuesto_acabados","id",'CASCADE','CASCADE');
$this->forge->addForeignKey("presupuesto_encuadernado_id","presupuesto_encuadernaciones","id",'CASCADE','CASCADE');
$this->forge->addForeignKey("presupuesto_manipulado_id","presupuesto_manipulados","id",'CASCADE','CASCADE');
$this->forge->addForeignKey("presupuesto_preimpresion_id","presupuesto_preimpresiones","id",'CASCADE','CASCADE');
$this->forge->addForeignKey("presupuesto_extra_id","presupuesto_serviciosExtra","id",'CASCADE','CASCADE');
$this->forge->processIndexes('orden_trabajo_tareas');
}
public function down()
{
$this->forge->dropForeignKey('orden_trabajo_tareas','orden_trabajo_tareas_presupuesto_linea_id_foreign');
$this->forge->dropForeignKey('orden_trabajo_tareas','orden_trabajo_tareas_presupuesto_acabado_id_foreign');
$this->forge->dropForeignKey('orden_trabajo_tareas','orden_trabajo_tareas_presupuesto_encuadernado_id_foreign');
$this->forge->dropForeignKey('orden_trabajo_tareas','orden_trabajo_tareas_presupuesto_manipulado_id_foreign');
$this->forge->dropForeignKey('orden_trabajo_tareas','orden_trabajo_tareas_presupuesto_preimpresion_id_foreign');
$this->forge->dropForeignKey('orden_trabajo_tareas','orden_trabajo_tareas_presupuesto_extra_id_foreign');
$this->forge->addForeignKey("presupuesto_linea_id","presupuesto_linea","id");
$this->forge->addForeignKey("presupuesto_acabado_id","presupuesto_acabados","id");
$this->forge->addForeignKey("presupuesto_encuadernado_id","presupuesto_encuadernaciones","id");
$this->forge->addForeignKey("presupuesto_manipulado_id","presupuesto_manipulados","id");
$this->forge->addForeignKey("presupuesto_preimpresion_id","presupuesto_preimpresiones","id");
$this->forge->addForeignKey("presupuesto_extra_id","presupuesto_serviciosExtra","id");
$this->forge->processIndexes('orden_trabajo_tareas');
}
}