1. 程式人生 > >SQL Server2008R2循環語句

SQL Server2008R2循環語句

light show val als 數據 pla begin rest 循環語句

單循環語句

declare @i int
declare @LOCNUM nvarchar(36),@OBJECTTYPE nvarchar(36),@LOCDESC nvarchar(60),@LOCSTATUS nvarchar(36),@LOCSTORESTATUS nvarchar(36),@LINE decimal(5,0),@LIE decimal(5,0),@LAYER decimal(5,0)
set @i=13
while @i<31
begin
set @LOCNUM=‘OME01_00113303200102‘
set @OBJECTTYPE=‘TBuff‘
set @LOCDESC=‘1巷道11行10列2層‘
set @LOCSTATUS=‘Normal‘
set @LOCSTORESTATUS=‘Free‘
set @LINE=1
set @LIE=@i
set @LAYER=1


INSERT INTO [WMSServer].[dbo].[TWMS_LOC]
           ([LOCNUM]
           ,[OBJECTTYPE]
           ,[LOCDESC]
           ,[LOCSTATUS]
           ,[LOCSTORESTATUS]
           ,[LINE]
           ,[LIE]
           ,[LAYER])
     VALUES
           (@LOCNUM
           ,@OBJECTTYPE
           ,@LOCDESC
           ,@LOCSTATUS
           ,@LOCSTORESTATUS
           ,@LINE
           ,@LIE
           ,@LAYER)
 set @i=@i+1
 end
           
GO

多循環語句

技術分享圖片
truncate  table [WMSServer].[dbo].[TWMS_LOC]   //清空表的所有數據內容

declare @i nvarchar(36),@j nvarchar(36),@k nvarchar(36),@n nvarchar(36)
declare @LOCNUM nvarchar(36),@OBJECTTYPE nvarchar(36),@LOCDESC nvarchar(60),@LOCSTATUS nvarchar(36),@LOCSTORESTATUS nvarchar(36),@LINE decimal(5,0),@LIE decimal
(5,0),@LAYER decimal(5,0) set @i=1 set @n=101 while @i<33 begin set @j=13 while @j<31 begin set @k=1 while @k<3 begin set @LOCNUM=OME01_00113303200+@n set @OBJECTTYPE=TBuff set @LOCDESC=1巷道+@i++@j++@k+ set @LOCSTATUS=Normal set @LOCSTORESTATUS=Free set @LINE=@i set
@LIE=@j set @LAYER=@k INSERT INTO [WMSServer].[dbo].[TWMS_LOC] ([LOCNUM] ,[OBJECTTYPE] ,[LOCDESC] ,[LOCSTATUS] ,[LOCSTORESTATUS] ,[LINE] ,[LIE] ,[LAYER]) VALUES (@LOCNUM ,@OBJECTTYPE ,@LOCDESC ,@LOCSTATUS ,@LOCSTORESTATUS ,@LINE ,@LIE ,@LAYER) set @k=@k+1 end set @j=@j+1 end set @i=@i+1 end GO
View Code

SQL Server2008R2循環語句