• 框架-字符串拼接、数据库拆分


    1.Jquery页面拼接字符串方法
    //开始做字符的合并
                    var mLevelHtmlInfo = "";
                    var levelCodes = $("#LevelCodes").val().split(',');
                    if (levelCodes.length > 0) {
                        for (var i = 0; i < levelCodes.length; i++) {
                            var  a= $("#" + levelCodes[i]).val();
                            var b= $("#" + levelCodes[i] + "Ability").val();
                            var s = '';
                            $('input[name="'+levelCodes[i]+'"]:checked').each(function() {
                                s += $(this).val() + ',';
                            });

                            var endValue = a + "$" + b + "|" + s;
                            mLevelHtmlInfo += endValue + ">>";
                        }
                    }

    2.数据库拆分字符串方法:
    --定义LevelAfter(等级表)截取字段
    DECLARE @pt_arrCount INT
    DECLARE @pt_Index INT
    DECLARE @pt_TaskInfoGUID VARCHAR(50)

    --定义嵌套表LevelInfo(等级水平表)截取字段
    DECLARE @pt_arrCount1 INT
    DECLARE @pt_Index1 INT
    DECLARE @pt_TaskInfoGUID1 VARCHAR(50)


    a.这里是嵌套拆分字符串(001$能力培养|014001,014002,014003>>002$能力培养|014001,014002,014003)
    --开始进行切割字符串
            SELECT @pt_arrCount = dbo.App_S_funcGetArrayLength(@pi_Xml, '>>')
            set @pt_Index = 1
            while @pt_Index <= @pt_arrCount
            begin
                SELECT @pt_TaskInfoGUID = dbo.App_S_funcGetValueOfArrayIndex(@pi_Xml,'>>', @pt_Index)
                if     @pt_TaskInfoGUID!=''
                begin
                    --开始第二次循环
                    declare @pt_LevelCode varchar(50)
                    set @pt_LevelCode=substring(@pt_TaskInfoGUID,1,charindex('$',@pt_TaskInfoGUID)-1)
                    declare @pt_Ability varchar(500)
                    set @pt_Ability=substring(@pt_TaskInfoGUID,charindex('$',@pt_TaskInfoGUID)+1,charindex('|',@pt_TaskInfoGUID)-charindex('$',@pt_TaskInfoGUID)-1)
                    declare @pt_LevelInfos varchar(500)
                    set @pt_LevelInfos=substring(@pt_TaskInfoGUID,charindex('|',@pt_TaskInfoGUID)+1,len(@pt_TaskInfoGUID)-charindex('|',@pt_TaskInfoGUID))
                    --开始插入主表
                    declare @pt_ProductLevelCode varchar(50)
                    set @pt_ProductLevelCode=newid()
                    if @pt_Ability!=''  and @pt_LevelInfos!=''
                    begin
                        insert into TrainErp_Product_LevelAfter values(@pt_ProductLevelCode,@pi_ProductCode,@pt_LevelCode,@pt_Ability)            
                        --开始循环从表的数据
                                SELECT @pt_arrCount1 = dbo.App_S_funcGetArrayLength(@pt_LevelInfos, ',')
                                set @pt_Index1 = 1
                                while @pt_Index1 <= @pt_arrCount1
                                begin
                                    SELECT @pt_TaskInfoGUID1 = dbo.App_S_funcGetValueOfArrayIndex(@pt_LevelInfos,',', @pt_Index1)
                                    if @pt_TaskInfoGUID1!=''
                                    begin
                                        insert into TrainErp_Product_ProductLevelInfo values(newid(),@pt_ProductLevelCode,@pt_TaskInfoGUID1)
                                    end
                                set @pt_Index1 = @pt_Index1+ 1
                                end
                    end
                end        
                
                set @pt_Index = @pt_Index + 1
            end

    b.单个字符串拆分
    --开始循环从表的数据
                                SELECT @pt_arrCount1 = dbo.App_S_funcGetArrayLength(@pt_LevelInfos, ',')
                                set @pt_Index1 = 1
                                while @pt_Index1 <= @pt_arrCount1
                                begin
                                    SELECT @pt_TaskInfoGUID1 = dbo.App_S_funcGetValueOfArrayIndex(@pt_LevelInfos,',', @pt_Index1)
                                    if @pt_TaskInfoGUID1!=''
                                    begin
                                        insert into TrainErp_Product_ProductLevelInfo values(newid(),@pt_ProductLevelCode,@pt_TaskInfoGUID1)
                                    end
                                set @pt_Index1 = @pt_Index1+ 1
                                end

  • 相关阅读:
    LeetCode20 有效的括号
    函数的多个参数
    定义一个函数的基本语法 函数的参数
    函数
    金字塔
    水仙花数
    百鸡百钱
    循环demo
    while适用于不确定循环次数
    浏览器打断点
  • 原文地址:https://www.cnblogs.com/howie/p/4999676.html
Copyright © 2020-2023  润新知