0
我試圖在表OBJ_Availability中插入currentDate。 首先我在表格中創建一個所有開始和結束的臨時表。 稍後我將開始一個新的光標,我將循環從startdate到endDate的所有日期。SQLServer中的光標過程
需要一些幫助:錯誤='@CurrentDay'附近的語法不正確。上線49和53
USE [TMA3_Test]
GO
/****** Object: StoredProcedure [dbo].[CheckNewTechnologyName] Script Date: 04/09/2013 13:48:22 ******/
SET ANSI_NULLS OFF
GO
SET QUOTED_IDENTIFIER OFF
GO
alter procedure [dbo].[InsertTrainings]
as
declare
@Firstname varchar(25),
@Lastname varchar(25),
@TrainingName varchar(150),
@StartingDate datetime,
@EndingDate datetime,
@CurrentDay datetime
create table #OBJ_AvailabilityTraining (
Firstname varchar(25),
Lastname varchar(25),
TrainingName varchar(150),
OBJ_Date datetime
)
create table #Dates_temp (
StartingDate datetime,
EndingDate datetime
)
declare TrainingCursor cursor for
select Firstname, Lastname, TrainingName, StartingDate, EndingDate
from VIEW_Solidnet_Training
open TrainingCursor
fetch next from TrainingCursor into @Firstname, @Lastname, @TrainingName, @StartingDate, @EndingDate
while @@fetch_status=0
begin
insert into #Dates_temp values(@StartingDate, @EndingDate)
declare DateCursor cursor for
select StartingDate, EndingDate
from #Dates_temp
where StartingDate = @StartingDate
open DateCursor
fetch next from DateCursor into @StartingDate, @EndingDate
@CurrentDay = @StartingDate
while (@CurrentDay<[email protected])
begin
insert into #OBJ_AvailabilityTraining values(@Firstname, @Lastname, @TrainingName, @CurrentDay)
@CurrentDay = @CurrentDay + 1
fetch next from DateCursor into @StartingDate, @EndingDate
end
fetch next from TrainingCursor into @Firstname, @Lastname, @TrainingName, @StartingDate, @EndingDate
end
close TrainingCursor
deallocate TrainingCursor
close DateCursor
deallocate DateCursor
select * from #OBJ_AvailabilityTraining