
14/09/2012, 11:42
|
 | | | Fecha de Ingreso: abril-2012 Ubicación: guadalajara
Mensajes: 139
Antigüedad: 13 años Puntos: 12 | |
ejecutar archivo de texto para crear trigger mysql en statement Hola buen dia , tengo una rutina en la que construyo mi base de datos por medio de un archivo de texto con instrucciones de mysql , esto me funciona bien pero no se como ejecutar otro archivo que contiene las instrucciones de un trigger a continuacion posteo la rutina que use pero que no me funciono , agradesco la ayuda que me puedan brindar para poder resolver el problema
Código:
StringBuffer triggerQuery = new StringBuffer();
try {
InputStream is = getClass().getClassLoader().getResourceAsStream("imagen/trigger.txt");
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String line = null;
while((line = br.readLine())!= null){
triggerQuery.append(line);
}
executeLine(triggerQuery.toString());
}
catch(Exception E){
}
}
y el contenido de mi archivo de texto es el siguiente
Código:
DROP TRIGGER IF EXISTS ACTCODIGO;
DELIMITER |
CREATE TRIGGER actcodigo BEFORE INSERT ON BC_ARTICULOS
FOR EACH ROW BEGIN
DECLARE digito INT DEFAULT 0;
DECLARE resultado INT DEFAULT 0;
DECLARE IDN INT DEFAULT 0;
DECLARE NUMPREV VARCHAR(30) DEFAULT 0;
IF NEW.BARCODE IS NULL THEN
SET IDN = (SELECT MAX(ID) FROM BC_ARTICULOS);
IF IDN IS NULL THEN
SET IDN = 1;
ELSE
SET IDN = (SELECT MAX(ID) FROM BC_ARTICULOS) +1;
END IF;
SET NUMPREV = 750000000000 + IDN;
SET DIGITO = 10-(((substr(NUMPREV,2,1)+substr(NUMPREV,4,1)+substr(NUMPREV,6,1)+substr(NUMPREV,8,1)+substr(NUMPREV,10,1)+substr(NUMPREV,12,1))*3)+((substr(NUMPREV,1,1)+substr(NUMPREV,3,1)+substr(NUMPREV,5,1)+substr(NUMPREV,7,1)+substr(NUMPREV,9,1)+substr(NUMPREV,11,1))))mod 10;
IF DIGITO < 10 THEN SET NEW.BARCODE = CONCAT(NUMPREV,DIGITO);
ELSE SET NEW.BARCODE = CONCAT(NUMPREV,'0');
END IF;
END IF;
END
|
DELIMITER ;
|