From 85fb4637085c321d4557218e252d8eecbbaab23e Mon Sep 17 00:00:00 2001 From: Lizandro Guarnizo <77708265+lizandrogd@users.noreply.github.com> Date: Thu, 12 Mar 2026 16:30:03 -0500 Subject: [PATCH] fix: 06_master_sync.sql corregir errores SQL para MariaDB MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. ADD CONSTRAINT IF NOT EXISTS no es estándar en MariaDB < 10.5 — eliminado el bloque FK de admin_users.role_id (la integridad la gestiona la aplicación). 2. AFTER `pdf_path` fallaba porque la columna no existe en lab_form_envios — eliminado el AFTER, la columna se agrega al final de la tabla. Esto evita que la migración falle en cada deploy. --- database/06_master_sync.sql | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/database/06_master_sync.sql b/database/06_master_sync.sql index e80b9fa..4a10e80 100644 --- a/database/06_master_sync.sql +++ b/database/06_master_sync.sql @@ -166,21 +166,16 @@ CREATE TABLE IF NOT EXISTS `lab_config` ( ALTER TABLE `admin_users` ADD COLUMN IF NOT EXISTS `role_id` int(11) DEFAULT NULL; --- C1a) FK opcional: se añade solo si no existe ya --- (MariaDB/MySQL 10.x: ADD CONSTRAINT IF NOT EXISTS no es estándar, --- se ignora el error si ya existe usando INSERT IGNORE pattern) -ALTER TABLE `admin_users` - ADD CONSTRAINT IF NOT EXISTS `fk_admin_role` - FOREIGN KEY (`role_id`) REFERENCES `roles` (`id`) - ON DELETE SET NULL ON UPDATE CASCADE; +-- C1a) FK opcional: omitida — ADD CONSTRAINT IF NOT EXISTS no es estándar +-- en todas las versiones de MariaDB. La columna role_id ya existe; la FK +-- se gestiona por la aplicación (integridad referencial vía código). -- ============================================================================= -- C2) COLUMNA: lab_form_envios.hash_verificacion (prod → local) -- ============================================================================= ALTER TABLE `lab_form_envios` ADD COLUMN IF NOT EXISTS `hash_verificacion` char(64) DEFAULT NULL - COMMENT 'SHA-256 del PDF generado, para verificación de integridad' - AFTER `pdf_path`; + COMMENT 'SHA-256 del PDF generado, para verificación de integridad'; -- ============================================================================= -- C3) COLUMNAS: lab_formularios doc_* (prod → local / instalaciones nuevas)