Ver Mensaje Individual
  #5 (permalink)  
Antiguo 31/12/2017, 12:46
azaz
 
Fecha de Ingreso: enero-2011
Mensajes: 1.150
Antigüedad: 13 años, 3 meses
Puntos: 10
Respuesta: crear una variable por defecto en un trigger mysql

Cita:
Iniciado por gnzsoloyo Ver Mensaje
En MySQL las variables locales de rutinas almacenadas (triggers, functions, stored procedures, events), NO USAN "@". Se definen directamente por su nombre:
Código SQL:
Ver original
  1. DECLARE nombre VARCHAR(30);
  2. SET nombre = CONCAT(OLD.nombre,' ',OLD.apellido);

Las variables que usan "@" son denominadas "variables de sesión" o "de conexión", y son persistentes en la misma conexión aunque el proceso que las usa termine si no termina la conexión, así como sus valores. No se las crea ni declara, sino que se INICIALIZAN, dado que su valor inicial es NULL, y toda operación con NULLL da por resultado NULL (no olvidar esto).
Tampoco tienen tipo de dato, por lo que adoptan el tipo del valor que se les asigna.
Es una de las diferencias con SQL Server que debe tenerse en cuenta.

Código SQL:
Ver original
  1. SET @nombre  = CONCAT(OLD.nombre,' ',OLD.apellido);
funciono perfecto