设为首页收藏本站
查看: 111|回复: 0

[PHP] Sqlserver2005使用XML一次更新多条记录的方法

[复制链接]

论坛元老

Rank: 6Rank: 6

积分
34274
主题
17031
UID
1347
M币
67
贡献
17176

  • 发表于 2018-7-15 00:12:00 | 显示全部楼层 |阅读模式
    Sqlserver 2005使用XML一次更新多条记录的方法,需要一次更新多条记录的朋友可以参考下。

    我想很多人都知道,在oracle里面,存储过程里面可以传入数组(如int[]),也就是说,可以传多条记录到数据,从而一起更新。减少数据库的请求次数。
    但SqlServer呢?bulk Insert这个很多人都知道,我也知道,但可惜,我从来没用过,只有导数据的时候才会考虑,但导数据DTS不是更方便吗?
    手头的一个项目,有几个功能,每次需要更新N(N[I]268[/I]第268章100[I]273[/I]第273章100[I]275[/I]第275章100' 怎么样?不错吧。只需要在存储过程里面对XML格式进行解析。

    而在c#里面,XML格式可以传入DbType.String类型就可以了。
    再写一个函数来生成XML格式的字符串

    生成XML格式的函数
    代码如下:
    public static string FormatXmlInfo(List list)
    {
    if (list==null||list.Count[I]{0}[/I]{1}{2}", info.ChapterId, info.ChapterName, info.Price);
    }
    return sb.ToString();
    }

    好了,完成了。
    性能具体怎么样,还没进行测试,但肯定的一点是,比多次请求数据库,或者在存储过程里面循环分割字符串效率要高。
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    在我站开通SVIP可同时获得17个站点VIP资源 立即登录 立即注册
    快速回复 返回顶部 返回列表