Insert utilizando datos de Inserted

27/06/2005 - 18:03 por Pedro | Informe spam
Hola a todos, quiero hacer un Tiggre que se ejecuta en una tabla y quiero
que al hacer una inserción en esta tabla me introduzca un nuevo registro en
otra, para ello utilizo datos contenidos en Inserted y aquí esta mi problema
estoy intentado hacer lo siguiente, pero me parece que los tiros no van por
aquí. A ver si alguien puede hecharme una mano.

CREATE TRIGGER Movimiento_Compra ON [dbo].[Valores_Cartera]
FOR INSERT
AS

INSERT INTO Movimientos
(Fecha,Nombre_Fondo,Tipo,Acciones,Valor_Liquidativo,Importe,Divisa,Nombre_Cartera)
VALUES
(Inserted.Fecha_Compra, Inserted.Nombre_Fondo, 'Compra',
Inserted.Acciones_Compra, Inserted.Valor_Liquidativo_Compra,
Inserted.Inicial, 'EUR', Inserted.Nombre_Cartera)

FROM Movimientos
INNER JOIN Carteras ON Carteras.Nombre = Movimientos.Nombre_Cartera
INNER JOIN Inserted ON Carteras.Nombre = Inserted.Nombre_Cartera


Muchas gracias, Un Saludo.

Preguntas similare

Leer las respuestas

#1 Maxi
27/06/2005 - 19:55 | Informe spam
Hola Pedro, proba asi:

CREATE TRIGGER Movimiento_Compra ON [dbo].[Valores_Cartera]
FOR INSERT
AS

INSERT INTO Movimientos
(Fecha,Nombre_Fondo,Tipo,Acciones,Valor_Liquidativo,Importe,Divisa,Nombre_Cartera)select Inserted.Fecha_Compra, Inserted.Nombre_Fondo, 'Compra', Inserted.Acciones_Compra, Inserted.Valor_Liquidativo_Compra, Inserted.Inicial, 'EUR', Inserted.Nombre_Cartera FROM Movimientos INNER JOIN Carteras ON Carteras.Nombre = Movimientos.Nombre_Cartera INNER JOIN Inserted ON Carteras.Nombre = Inserted.Nombre_Cartera-Salu2Maxi"Pedro" escribió en el mensajenews: Hola a todos, quiero hacer un Tiggre que se ejecuta en una tabla y quieroque al hacer una inserción en esta tabla me introduzca un nuevo registro enotra, para ello utilizo datos contenidos en Inserted y aquí esta mi problemaestoy intentado hacer lo siguiente, pero me parece que los tiros no van poraquí. A ver si alguien puede hecharme una mano.>> CREATE TRIGGER Movimiento_Compra ON [dbo].[Valores_Cartera]> FOR INSERT> AS>> INSERT INTO Movimientos(Fecha,Nombre_Fondo,Tipo,Acciones,Valor_Liquidativo,Importe,Divisa,Nombre_Cartera) VALUES> (Inserted.Fecha_Compra, Inserted.Nombre_Fondo, 'Compra',Inserted.Acciones_Compra, Inserted.Valor_Liquidativo_Compra,Inserted.Inicial, 'EUR', Inserted.Nombre_Cartera)>> FROM Movimientos> INNER JOIN Carteras ON Carteras.Nombre = Movimientos.Nombre_Cartera> INNER JOIN Inserted ON Carteras.Nombre = Inserted.Nombre_Cartera>>> Muchas gracias, Un Saludo.>
#2 Pedro
28/06/2005 - 12:33 | Informe spam
Hola Maxi:

Pues no me funciona, es que no me ha quedado claro esta operación del SELECT
porque al hacer el select equivale a hacer el VALUES (datos), o como se
representaría esto.

Muchas gracias por tu ayuda, Un saludo, Pedro



"Maxi" escribió en el mensaje
news:
Mostrar la cita
#3 Maxi
28/06/2005 - 14:03 | Informe spam
Hola Pedro, el tema es asi, la sentencia para hacer un insert desde una
tabla es

Insert into tabladestino (campos)
Select campos from tablaorigen




Salu2
Maxi


"Pedro" escribió en el mensaje
news:
Mostrar la cita
#4 Pedro
28/06/2005 - 23:04 | Informe spam
Hola Maxi:

Ya lo consegui el problema era que tenia que hacer bien el select, jejeje.
Muchas gracias por tu ayuda me ha sido de utilidad porque no sabía que se
podría hacer eso.

Un Saludo, Pedro.

"Maxi" escribió en el mensaje
news:%
Mostrar la cita
Ads by Google
Search Busqueda sugerida