zoukankan      html  css  js  c++  java
  • XML类型的SQL参数 欧阳锋

    有的时候,我们常常需要将一个数据表格当做参数发送给存储过程,然后进行操作,以往,我常常用逗号或者其他分隔符将数据拼成一个字符传,但这个方法有限制,sql verchar类型只能达到8000字符,现在有了SQL2005了,我们可以直接用XML当做参数了,这样既方便有没有那个限制了。自己也是刚刚使用了几次,有些功能还是不是很清楚。只将自己学习的两种方法总结一下。

     一种方法,当做表用,如下,返回多列。

    @PeakHours xml,
    DECLARE @NEWPeakHours TABLE([WeekDay] smallint,[PeakHourType] varchar(
    10),[StartTime] datetime,[EndTime] datetime,IsChanged bit)

    INSERT INTO @NEWPeakHours
    SELECT 
    T.Records.query(
    'WD').value('.','smallint'as WD,
    T.Records.query(
    'TP').value('.','varchar(10)'as TP,
    T.Records.query(
    'ST').value('.','datetime'as ST,
    T.Records.query(
    'ET').value('.','datetime'as ET,
    0

     from @PeakHours.nodes('/RP/PH') AS T(Records) 


    另外一种方法, 返回单列

    select Stores.ID.value('.', 'int') as StoreId

    from @Stores.nodes('/ES/ST') Stores(ID) 

    您的支持,我的动力!
  • 相关阅读:
    79.Word Search
    78.Subsets
    77.Combinations
    75.Sort Colors
    74.Search a 2D Matrix
    73.Set Matrix Zeroes
    71.Simplify Path
    64.Minimum Path Sum
    63.Unique Paths II
    Docker 拉取 oracle 11g镜像配置
  • 原文地址:https://www.cnblogs.com/luking/p/2055435.html
Copyright © 2011-2022 走看看