惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

G
Google Developers Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
WordPress大学
WordPress大学
阮一峰的网络日志
阮一峰的网络日志
V
Visual Studio Blog
雷峰网
雷峰网
博客园_首页
The Cloudflare Blog
Hugging Face - Blog
Hugging Face - Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
爱范儿
爱范儿
小众软件
小众软件
D
Docker
P
Proofpoint News Feed
B
Blog
Vercel News
Vercel News
B
Blog RSS Feed
U
Unit 42
月光博客
月光博客
The GitHub Blog
The GitHub Blog
Apple Machine Learning Research
Apple Machine Learning Research
Y
Y Combinator Blog
I
InfoQ
Recent Announcements
Recent Announcements

博客园 - 代码乱了

MIT 18.06 线性代数 - 23微分方程,exp(At) MIT 18.06 线性代数 - 22. 对角化和矩阵的幂 测试markdown发布 visual webgui theme designer 健身视频 2012元旦遭遇坑爹的12306订票网站付了款不出票 博文阅读密码验证 - 博客园 ReportViewer 2008 打印出现Error loading resource library. (0x8007007E)和(0x80070006) 博文阅读密码验证 - 博客园 VM.xPort.ExcelClient XXX备忘 Parsing html markup text using MSHTML Serialize and Deserialize RDL Winform Field interface 转换前台javascript传递过来的时间字符串到.net的DateTime 博文阅读密码验证 - 博客园 SQL:获取正在执行的SQL语句 博文阅读密码验证 - 博客园 VSX vsct file context menu for script editor - 代码乱了 MSChart出现为ChartImg.axd 执行子请求时出错 - 代码乱了 - 博客园
利用XML转换为table实现在SQL参数中传递表结构
代码乱了 · 2010-08-23 · via 博客园 - 代码乱了

SQL 2005中,通常会用到在SQL参数中传递表结构,最简单的办法是利用XML转换为table

代码

DECLARE    @h INT,
    
@XML VARCHAR(8000),
    
@2k5 XMLSELECT    @XML =    '
            <jrt>
                <item>
                    <id>11</id>
                    <name>CS Tester</name>
                    <company>EEE</company>
                    <phone>555-555-1234</phone>
                </item>
                <item>
                    <id>22</id>
                    <name>CS Tester</name>
                    <company>EEE</company>
                    <phone>555-555-1234</phone>
                </item>
            </jrt>
        
',
    
@2k5 = @XMLSELECT    T.c.query('id').value('.[1]''varchar(100)'as id,
        T.c.query(
'name').value('.[1]''varchar(50)') as name,
        T.c.query(
'company').value('.[1]''varchar(50)') as company,
        T.c.query(
'phone').value('.[1]''nvarchar(50)'as phone
FROM    @2k5.nodes('/jrt/item'AS T(c)

 结果是:

id         name       company    phone
---------- ---------- ---------- ----------
11         CS Tester  EEE        555-555-12
22         CS Tester  EEE        555-555-12