dr_csharp
سه شنبه 16 مهر 1387, 15:44 عصر
سلام
من میخوام وقتی رکورد جدیددرون جدول CallRecorder وارد میشه ،روی فیلد BeginTime جدول که از نوع NVARCHAR هست عملیاتی انجام و فیلد Update بشه :
CREATE TRIGGER pbxTime ON CallRecorder
FOR INSERT
AS
DECLARE @RecId INT;
DECLARE @BeginTime nvarchar(10);
DECLARE @time DATETIME;
SELECT @RecId=RecId,@BeginTime=BeginTime FROM Inserted
DECLARE @second INT;
SET @time=CAST(@BeginTime AS DATETIME);
SET @second=DATEPART(second,@time);
IF(@second>30)
SET @time=DATEADD(minute,1,@time);
SELECT @BeginTime=CONVERT(CHAR(5), @time,114);
UPDATE CallRecorder SET BeginTime=@BeginTime where RecId=@RecId;
آیا روش فوق بهینه است ؟ ( منظور روش استفاده شده در انتخاب اخرین رکورد و انتخاب فیلد BeginTime آخرین رکورد )
من میخوام وقتی رکورد جدیددرون جدول CallRecorder وارد میشه ،روی فیلد BeginTime جدول که از نوع NVARCHAR هست عملیاتی انجام و فیلد Update بشه :
CREATE TRIGGER pbxTime ON CallRecorder
FOR INSERT
AS
DECLARE @RecId INT;
DECLARE @BeginTime nvarchar(10);
DECLARE @time DATETIME;
SELECT @RecId=RecId,@BeginTime=BeginTime FROM Inserted
DECLARE @second INT;
SET @time=CAST(@BeginTime AS DATETIME);
SET @second=DATEPART(second,@time);
IF(@second>30)
SET @time=DATEADD(minute,1,@time);
SELECT @BeginTime=CONVERT(CHAR(5), @time,114);
UPDATE CallRecorder SET BeginTime=@BeginTime where RecId=@RecId;
آیا روش فوق بهینه است ؟ ( منظور روش استفاده شده در انتخاب اخرین رکورد و انتخاب فیلد BeginTime آخرین رکورد )