tengo este query y me regresa el campo que se afecta, como lo estas haciendo tu??
Código SQL:
Ver originalCREATE TABLE pruebas
(
id INT,
nombre VARCHAR(20)
)
INSERT INTO pruebas VALUES (1,'Libras')
INSERT INTO pruebas VALUES (2,'Yo')
INSERT INTO pruebas VALUES (3,'Tu')
INSERT INTO pruebas VALUES (4,'Mama')
INSERT INTO pruebas VALUES (5,'Nos')
UPDATE pruebas
SET nombre='libras'
WHERE id=5
USE testing
ALTER TRIGGER tg_pruebas ON pruebas after INSERT,UPDATE
AS
BEGIN
DECLARE @valor INT
DECLARE @id INT
DECLARE @nombre VARCHAR(20)
DECLARE @fieldname VARCHAR(20)
SET @fieldname=''
SET @valor=0
SELECT @valor=COUNT(*) FROM deleted
IF @valor>=1
BEGIN
--print 'alla'
SELECT @id=id,@nombre=nombre FROM deleted
--print @id
--print @nombre
--select * from inserted
IF @id<>(SELECT id FROM inserted)
SET @fieldname=@fieldname + 'Id'
IF @nombre<>(SELECT nombre FROM inserted)
SET @fieldname=@fieldname + 'Nombre'
END
ELSE
BEGIN
--print 'aqui'
SELECT * FROM inserted
--select @id=id,@nombre=nombre from deleted
END
IF @fieldname<>''
print 'El campo afectado ' + @fieldname
END