Consulta breve
Publicado por snakechaos (3 intervenciones) el 27/06/2014 09:42:41
Hola buenas tardes/días/noches depende de la hora.
Resulta que mi consulta va por el lado de que no se como hacer lo que detallare a continuación:
(espero me entiendan)
tengo una tabla cualquiera:
//creo la tabla
CREATE TABLE Prueba(
id_prueba INT NOT NULL,
nombre VARCHAR2(10));
//asigno la PK
ALTER TABLE Prueba ADD CONSTRAINT PK_id_prueba
PRIMARY KEY(id_prueba);
//realizo una secuencia
CREATE SEQUENCE id_prueba
INCREMENT BY 1
START WITH 1;
//creo un trigger para la secuencia
CREATE OR REPLACE TRIGGER Trigger_id_prueba
BEFORE INSERT ON Prueba
FOR EACH ROW
BEGIN
IF :new.id_prueba IS NULL THEN
select id_prueba.NextVal
into :new.id_rueba
from Dual;
END IF;
END;
//ahora mi duda/consulta/pregunta:
Como realizo el procedimiento almacenado para ingresar los datos?
no se como se realiza para poder insertar el trigger de la secuencia
CREATE OR REPLACE PROCEDURE insert_prueba
(nombre IN VARCHAR2)
AS
BEGIN
INSERT INTO prueba VALUES(nombre);
END;
luego de crear el trigger me da el sgte error :
Warning: execution completed with warning
PROCEDURE insert_prueba Compiled.
y por consiguiente no puedo usar el execute.
cabe destacar que es solo un ejemplo,para un trabajo que debo hacer(necesito hacer los proc de insert, update y delete, pero no entiendo el tema del trigger)
Saludos y gracias por leer.
Resulta que mi consulta va por el lado de que no se como hacer lo que detallare a continuación:
(espero me entiendan)
tengo una tabla cualquiera:
//creo la tabla
CREATE TABLE Prueba(
id_prueba INT NOT NULL,
nombre VARCHAR2(10));
//asigno la PK
ALTER TABLE Prueba ADD CONSTRAINT PK_id_prueba
PRIMARY KEY(id_prueba);
//realizo una secuencia
CREATE SEQUENCE id_prueba
INCREMENT BY 1
START WITH 1;
//creo un trigger para la secuencia
CREATE OR REPLACE TRIGGER Trigger_id_prueba
BEFORE INSERT ON Prueba
FOR EACH ROW
BEGIN
IF :new.id_prueba IS NULL THEN
select id_prueba.NextVal
into :new.id_rueba
from Dual;
END IF;
END;
//ahora mi duda/consulta/pregunta:
Como realizo el procedimiento almacenado para ingresar los datos?
no se como se realiza para poder insertar el trigger de la secuencia
CREATE OR REPLACE PROCEDURE insert_prueba
(nombre IN VARCHAR2)
AS
BEGIN
INSERT INTO prueba VALUES(nombre);
END;
luego de crear el trigger me da el sgte error :
Warning: execution completed with warning
PROCEDURE insert_prueba Compiled.
y por consiguiente no puedo usar el execute.
cabe destacar que es solo un ejemplo,para un trabajo que debo hacer(necesito hacer los proc de insert, update y delete, pero no entiendo el tema del trigger)
Saludos y gracias por leer.
Valora esta pregunta
0