sql server openxml tips

原创 2004年07月09日 13:59:00

use openxml to operate the xml document with namespace

-- example one
declare @xml nvarchar(1000)
SET @xml = '<?xml:namespace prefix = a />
test1
test2
'
DECLARE @Doc int
EXEC sp_xml_preparedocument @Doc OUTPUT, @xml, ''
select *
FROM OpenXml(@Doc, '/ whxbb:head/ whxbb:test',2)
with( d nvarchar(50) 'text()')
EXEC sp_xml_removedocument @Doc


-- example two
declare @xml nvarchar(1000)
SET @xml = '
test1
test2
'
DECLARE @Doc int
EXEC sp_xml_preparedocument @Doc OUTPUT, @xml, ''
select *
FROM OpenXml(@Doc, '/ whxbb:head/ whxbb:test',2)
with( d nvarchar(50) 'text()')
EXEC sp_xml_removedocument @Doc

 

fetch the node value in the same parent with same name

declare @xml nvarchar(1000)
SET @xml = '
test1
test2
'
DECLARE @Doc int
EXEC sp_xml_preparedocument @Doc OUTPUT, @xml
select *
FROM OpenXml(@Doc, '/head/test', 1)
with( comment nvarchar(300) 'text()' )
EXEC sp_xml_removedocument @Doc

 

Update and Insert operate with openxml

-- Insert 
INSERT INTO fnd_tabs
SELECT *
FROM OPENXML(@doc, '/NewDataSet/Table1', 2)
WITH fnd_tabs

 

-- Update 
UPDATE fnd_modules
SET
fnd_modules.module_name = xml_module_name,
fnd_modules.module_user_name = xml_module_user_name,
fnd_modules.module_src = xml_module_src,
fnd_modules.module_type = xml_module_type,
fnd_modules.module_catalog = xml_module_catalog,
fnd_modules.description = xml_description,
fnd_modules.is_valid = xml_is_valid
FROM OPENXML(@doc, '/Modules/Module', 3)
WITH (
xml_module_id int '@module_id',
xml_module_name nvarchar(200) 'module_name',
xml_module_user_name nvarchar(400) 'module_user_name',
xml_module_src nvarchar(200) 'module_src',
xml_module_type nvarchar(200) 'module_type',
xml_module_catalog int 'module_catalog',
xml_is_valid bit 'is_valid',
xml_description nvarchar(480) 'description'
)
WHERE fnd_modules.module_id = xml_module_id

关于SqlServer中openxml的使用

A:active { FONT-FAMILY: "Arial,Helvetica,sans-serif,新宋体";COLOR: #0000ff; FONT-SIZE: 8pt; TEXT-DECORA...
  • wateruning2
  • wateruning2
  • 2007年10月22日 16:34
  • 538

SQL openxml用法

                                                                              openxml用法2008-11-06 15...
  • jack15850798154
  • jack15850798154
  • 2010年03月01日 10:30
  • 5794

sql openxml学习笔记

 DECLARE @doc xml --SET @doc = ' -- --AccountNumber="10-4030-018759" ContactID="4189" BillToAd...
  • hzvcan
  • hzvcan
  • 2014年11月11日 16:52
  • 1416

SQL Server2005中使用XML-OPENXML

 使用open xml将别人的xml数据插入到自己的数据库中DECLARE @doc xmlSET @doc = AccountNumber="10-4030-018759" ContactID="4...
  • guoquanyou
  • guoquanyou
  • 2009年03月04日 10:21
  • 2944

SQL server 2008 关于XML类型数据 功能总结及性能测试

一、SQL Server 对XML数据功能支持 SQL Server 2000 对XML 的支持 在SQL Server2000 中,标准的T-SQL Select 语句引入了FOR XML 子句...
  • w174504744
  • w174504744
  • 2012年11月23日 10:28
  • 12192

OpenXml应用:将Excel文件导入sql server数据库

需求 将Excel文件导入数据库 分析 Excel文件中有多个页签,每个页签中的列相同,页签名称做为分类,包含名称和编码,导入分类表,所有页签数据导入相同的表,每次数据总数变化不大,数量也不算多...
  • wangshiwei1105
  • wangshiwei1105
  • 2018年01月13日 11:52
  • 49

SQL Server 存储过程解析XML传参

1、定义存储过程
  • kangkanglou
  • kangkanglou
  • 2014年07月07日 19:07
  • 5631

使用OPENXML函数将XML文档转换为行结果集

FOR XML子句都是将行结果集转换为XML结果集,那么如果想要将XML文档转换成行结果集,这时就要使用OPENXML函数。OPENXML在SQL Server 2000中就已经提供,但是在SQL S...
  • studyzy
  • studyzy
  • 2013年09月10日 14:20
  • 905

实战:sqlserver 2008 扩展事件-XML转换为标准的table格式

sqlserver扩展事件,结果集是XML不便于阅读,将其转换为table格式便于阅读和排序....
  • yangzhawen
  • yangzhawen
  • 2014年12月24日 17:35
  • 8725

SQL Server tips

1.      Why don’t use “select * ” a)      when a new culume isinserted into the DB, the current prog...
  • sooner01
  • sooner01
  • 2009年05月13日 15:48
  • 610
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:sql server openxml tips
举报原因:
原因补充:

(最多只允许输入30个字)