PROBLEMAS CON TRIGGER

19/06/2006 - 13:49 por JUAN CARLOS | Informe spam
Tengo una tabla creada con una PK que es un autonumérico:

CREATE TABLE [PRUEBAS] (
[IDPRU] [int] IDENTITY (1, 1) NOT NULL ,
[LETRA] [varchar] (100) NULL ,
CONSTRAINT [PK_PRUEBAS] PRIMARY KEY CLUSTERED
(
[IDPRU]
) ON [PRIMARY]
) ON [PRIMARY]
GO

Sobre ella he creado un triger para que al insertar un dato me lo meta
en una de auditoria:

CREATE TRIGGER Insert_PRUEBAS_AUDIT
ON PRUEBAS
AFTER INSERT AS
INSERT INTO PRUEBAS_AUDIT (ACTUALIZACIÓN,ACCION,
[PRUEBAS_audit].[IDPRU], PRUEBAS_audit].[LETRA])
SELECT GETDATE() AS ACTUALIZACION,'INSERT' AS ACCION, [IDPRU],[LETRA]
FROM INSERTED

Resulta que si inserto un valor nuevo en la tabla pruebas, que tiene un
campo identity, cuando voy a insertar un nuevo registro desde el
Administrador corporativo/ tablas/ Abrir tabla/devolver todas las
filas, en el campo idpru me aparece un 1 en vez del valor real del
campo (por ejemplo 38), sin embargo si pulso sobre ! ejecutar me
aparece el registro con el idpru adecuado.

Se que conlos trigger hay problemas con el ambito y la sesión, pero
puede solucionarse esto de alguna manera
Gracias por todo.
Juan Carlos
 

Leer las respuestas

#1 Maxi
19/06/2006 - 22:13 | Informe spam
Hola, es raro, no te entiendo bien eso del valor 1 y el !. Proba hacer los
insert con el query analizer y TSQL porque no veo problemas en tu trigger a
menos que el campo en la tabla auditoria tambien sea identity y ahi estaria
probocando problemas

"JUAN CARLOS" wrote in message
news:
Tengo una tabla creada con una PK que es un autonumérico:

CREATE TABLE [PRUEBAS] (
[IDPRU] [int] IDENTITY (1, 1) NOT NULL ,
[LETRA] [varchar] (100) NULL ,
CONSTRAINT [PK_PRUEBAS] PRIMARY KEY CLUSTERED
(
[IDPRU]
) ON [PRIMARY]
) ON [PRIMARY]
GO

Sobre ella he creado un triger para que al insertar un dato me lo meta
en una de auditoria:

CREATE TRIGGER Insert_PRUEBAS_AUDIT
ON PRUEBAS
AFTER INSERT AS
INSERT INTO PRUEBAS_AUDIT (ACTUALIZACIÓN,ACCION,
[PRUEBAS_audit].[IDPRU], PRUEBAS_audit].[LETRA])
SELECT GETDATE() AS ACTUALIZACION,'INSERT' AS ACCION, [IDPRU],[LETRA]
FROM INSERTED

Resulta que si inserto un valor nuevo en la tabla pruebas, que tiene un
campo identity, cuando voy a insertar un nuevo registro desde el
Administrador corporativo/ tablas/ Abrir tabla/devolver todas las
filas, en el campo idpru me aparece un 1 en vez del valor real del
campo (por ejemplo 38), sin embargo si pulso sobre ! ejecutar me
aparece el registro con el idpru adecuado.

Se que conlos trigger hay problemas con el ambito y la sesión, pero
puede solucionarse esto de alguna manera
Gracias por todo.
Juan Carlos

Preguntas similares