设为首页 - 加入收藏  
您的当前位置:首页 >IT科技 >实现SQL Server传送数组参数变通的方案描述 正文

实现SQL Server传送数组参数变通的方案描述

来源:亿华互联编辑:IT科技时间:2025-11-05 12:08:30
实现SQL Server传送数组参数变通的方案描述
复制CREATE PROCEDURE dbo.ProductListUpdateSpecialList    @ProductId_Array varChar(800),实现送数数变    @ModuleId int    AS    DECLARE @PointerPrev int    DECLARE @PointerCurr int    DECLARE @TId int    Set @PointerPrev=1 set @PointerCurr=1 begin transaction    Set NoCount ON    delete from ProductListSpecial where ModuleId=@ModuleId    Set @PointerCurr=CharIndex(,,@ProductId_Array,@PointerPrev+1)    set @TId=cast(SUBSTRING(@ProductId_Array,@PointerPrev,@PointerCurr-@PointerPrev) as int)    Insert into ProductListSpecial (ModuleId,ProductId) Values(@ModuleId,@TId)    SET @PointerPrev = @PointerCurr    while (@PointerPrev+1 <LEN(@ProductId_Array))    Begin    Set @PointerCurr=CharIndex(,,@ProductId_Array,@PointerPrev+1)    if(@PointerCurr> 0)    Begin    set @TId=cast(SUBSTRING(@ProductId_Array,@PointerPrev+1,@PointerCurr-@PointerPrev-1) as int)    Insert into ProductListSpecial (ModuleId,ProductId) Values(@ModuleId,@TId)    SET @PointerPrev = @PointerCurr    End    else    Break    End    set @TId=cast(SUBSTRING(@ProductId_Array,@PointerPrev+1,LEN(@ProductId_Array)-@PointerPrev) as int)    Insert into ProductListSpecial (ModuleId,ProductId) Values(@ModuleId,@TId)    Set NoCount OFF    if error=0 begin    commit transaction    end    else    begin    rollback transaction    end    GO    1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35.36.37.38.39.40.

1.9226s , 17457.9765625 kb

Copyright © 2025 Powered by 实现SQL Server传送数组参数变通的方案描述,亿华互联  滇ICP备2023000592号-16

sitemap

Top