PDA

View Full Version : سوال: Trigger, Insert Sql Statement



nazanintaraneh
پنج شنبه 23 آبان 1387, 10:40 صبح
در SQL Server 2005 مي خواهم Triggerي بنويسم که به محض اينکه رکوردي به Table_1در DB1 اضافه شد ،‌آن را به Table_2 در DB2 اضافه کند ،
آيا اين Trigger را بايد در روي table_1 (مبداء) بنويسم ؟
لطفا Sql Statement آن را برايم بنويسيد:
Structure Table_1 :
Filenumber int ,not null
Name,char
Surename, char

MajerajooyeKhallagh
پنج شنبه 23 آبان 1387, 11:24 صبح
سلام دوست عزیز :
این تریگر را بر روی Table_1 در db1 بنویسید:



CREATETRIGGER TRG_1
ON Table_1
AFTER INSERT
AS
BEGIN

SET NOCOUNT ON
DECLARE @FileNumber INT
,@Name CHAR(10)
,@SureName CHAR(10)
SELECT @FileNumber=FileNumber
,@Name=Name
,@SureName=SureName
FROM INSERTED
INSERTINTO [db2].[dbo].[Table_2]
(
[FileNumber]
,[Name]
,SureName
)
VALUES
( @FileNumber
,@Name
,@SureName
)
END
GO

nazanintaraneh
پنج شنبه 23 آبان 1387, 13:08 عصر
با تشکر
در مورد Primary key ها چه بايد بکنم ، مي خواهم در TAble_1
File Number کليد اصلي است اما در Table_2 ترکيب FileNumber , Code کليد اصلي باشد ،
و به Code به طور خودکار يکي يکي اضافه شود، Type را براي Code
Uniqueidentifier انتخاب کردم و NotNull اما Erorr مي دهد .

AAtoZZ
دوشنبه 20 دی 1389, 19:47 عصر
Create Trigger
Testlogtrg on Table_1
After Inerted
As
Begin
Insert into Table_2 Select FileNumber, Name, SureName from Inerted
End