declare @next int
declare @CurrentId int
set @next=1
while @next<=dbo.Get_StrArrayLength(@ReterId,',')
begin
set @CurrentId=dbo.Get_StrArrayStrOfIndex(@ReterId,',',@next)
INSERT INTO [L_ReterInfo](
[CreateTime],[UserProId],[ReterId],[Weight],[Status],[Re]
)VALUES(
GETDATE(),@Id,@CurrentId,@ReterWeight,@Status,@Re
)
declare @nexts int
declare @CurrentIdss int
while @nexts<=dbo.Get_StrArrayLength(@ByReterId,',')
begin
set @CurrentIdss=dbo.Get_StrArrayStrOfIndex(@ByReterId,',',@next)
INSERT INTO [L_ByReterInfo](
[CreateTime],[UserProId],[ReterId],[ByReterId]
)VALUES(
GETDATE(),@Id,@CurrentId,@CurrentIdss
)
set @nexts=@nexts+1
end
set @next=@next+1
end
循环里面的内层循环为什么不执行?
declare @CurrentId int
declare @nexts int
declare @CurrentIdss int
declare @End1 int
declare @End2 int
set @next=1
set @End1 = dbo.Get_StrArrayLength(@ReterId,',')while @next<=@End1
begin
set @CurrentId=dbo.Get_StrArrayStrOfIndex(@ReterId,',',@next)
INSERT INTO [L_ReterInfo](
[CreateTime],[UserProId],[ReterId],[Weight],[Status],[Re]
)VALUES(
GETDATE(),@Id,@CurrentId,@ReterWeight,@Status,@Re
)
set @nexts = 1
set @End2 = =dbo.Get_StrArrayLength(@ByReterId /*这在那里定义 赋值的?*/,',')
while @nexts<=@End2
begin
set @CurrentIdss=dbo.Get_StrArrayStrOfIndex(@ByReterId,',',@next)
INSERT INTO [L_ByReterInfo](
[CreateTime],[UserProId],[ReterId],[ByReterId]
)VALUES(
GETDATE(),@Id,@CurrentId,@CurrentIdss
)
set @nexts=@nexts+1
end
set @next=@next+1
end
--使用方案信息
@Id int output,
@ProName nvarchar(50),
@ReterId nvarchar(100),
@Weight nvarchar(100),
@ByReterId nvarchar(100),
@QuotaId nvarchar(200),
@BeginTime datetime,
@EndTime datetime,
@Status int,
@isReter int,
@Re nvarchar(200),--考核人信息
@ReterWeight int,
@ReterInfoStatus int,
@ReterRe nvarchar(200)
AS
INSERT INTO [L_UsePro](
[ProName],[ReterId],[Weight],[ByReterId],[QuotaId],[BeginTime],[EndTime],[Status],[isReter],[Re]
)VALUES(
@ProName,@ReterId,@Weight,@ByReterId,@QuotaId,@BeginTime,@EndTime,@Status,@isReter,@Re
)
SET @Id = @@IDENTITY declare @next int
declare @CurrentId int
declare @nexts int
declare @CurrentIdss int
declare @end1 int
declare @end2 int
set @next=1
set @end1=dbo.Get_StrArrayLength(@ReterId,',')
while @next<=@end1
begin
set @CurrentId=dbo.Get_StrArrayStrOfIndex(@ReterId,',',@next)
INSERT INTO [L_ReterInfo](
[CreateTime],[UserProId],[ReterId],[Weight],[Status],[Re]
)VALUES(
GETDATE(),@Id,@CurrentId,@ReterWeight,@Status,@Re
)
set @end2=dbo.Get_StrArrayLength(@ByReterId,',')
while @nexts<=@end2
begin
set @CurrentIdss=dbo.Get_StrArrayStrOfIndex(@ByReterId,',',@next)
INSERT INTO [L_ByReterInfo](
[CreateTime],[UserProId],[ReterId],[ByReterId]
)VALUES(
GETDATE(),@Id,@CurrentId,@CurrentIdss
)
set @nexts=@nexts+1
end
set @next=@next+1
end
end
试了,还是不行!再帮忙看看。
--使用方案信息
@Id int output,
@ProName nvarchar(50),
@ReterId nvarchar(100),
@Weight nvarchar(100),
@ByReterId nvarchar(100),
@QuotaId nvarchar(200),
@BeginTime datetime,
@EndTime datetime,
@Status int,
@isReter int,
@Re nvarchar(200),
--考核人信息
@ReterWeight int,
@ReterInfoStatus int,
@ReterRe nvarchar(200)
AS
begin
declare @next int
declare @CurrentId int
declare @nexts int
declare @CurrentIdss int
declare @end1 int
declare @end2 int INSERT INTO [L_UsePro]([ProName],[ReterId],[Weight],[ByReterId],[QuotaId],[BeginTime],[EndTime],[Status],[isReter],[Re])
VALUES(@ProName,@ReterId,@Weight,@ByReterId,@QuotaId,@BeginTime,@EndTime,@Status,@isReter,@Re)
SET @Id = @@IDENTITY
set @next=1
set @end1=dbo.Get_StrArrayLength(@ReterId,',')
while @next<=@end1
begin
set @CurrentId=dbo.Get_StrArrayStrOfIndex(@ReterId,',',@next)
INSERT INTO [L_ReterInfo]([CreateTime],[UserProId],[ReterId],[Weight],[Status],[Re])
VALUES(GETDATE(),@Id,@CurrentId,@ReterWeight,@Status,@Re) set @end2=dbo.Get_StrArrayLength(@ByReterId,',')
while @nexts<=@end2
begin
set @CurrentIdss=dbo.Get_StrArrayStrOfIndex(@ByReterId,',',@next)
INSERT INTO [L_ByReterInfo]([CreateTime],[UserProId],[ReterId],[ByReterId])
VALUES(GETDATE(),@Id,@CurrentId,@CurrentIdss)
set @nexts=@nexts+1
end
set @next=@next+1
end
end