在SQL Server中将数据导出为XML和Json的方法
有时候需要一次性将SQL Server中的数据导出给其他部门的也许进行关联或分析,这种需求对于SSIS来说当然是非常简单,但很多时候仅仅需要一次性导出这些数据而建立一个SSIS包就显得小题大做,而SQL Server的导入导出工具其中BUG还是蛮多的,最简单的办法是BCP。
数据导出为XML
在SQL Server 2005之后提供了一个for xml子句在关系数据库中原生支持XML。通过该命令可以将二维关系结果集转换为XML,通过BCP就可以将数据存为XML了。
例如下面的数据:
我们可以通过如下BCP命令(注意不能有回车)将其导出为XML文件,并保存:
BCP "SELECT TOP 30 [bom_no],[LEVEL] FROM [sqladmin].[dbo].[bom] FOR XML path,TYPE, ELEMENTS ,ROOT('RegionSales')" QUERYOUT "d:\temp\test.XML" -c -t -T -S localhost
执行完成后查看Test.XML文件,如下图所示。可以看到文件格式非常清晰,很容易就可以导入到其他系统了。
数据导出为JSON
如果希望将SQL Server中数据导出为Json,虽然这种操作在应用程序里已经有非常成熟的方法,但SQL Server其实并没有原生支持这种方式(小道消息,下个版本会支持)。我推荐使用这篇帖子的方式:http://jaminquimby.com/servers/95-sql/sql-2008/145-code-tsql-convert-query-to-json来做。将该帖子所提供的存储过程建立完成后,使用如下BCP命令:
执行完成后,得到结果如下图:
相关文章
SqlServer服务中利用触发器对指定账户进行登录ip限制提升安全性操作
这篇文章主要介绍了SqlServer服务中利用触发器对指定账户进行登录ip限制提升安全性,本文给大家讲解的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2023-02-02SQL Server2022版+SSMS下载安装教程(保姆级)
本文主要介绍了SQL Server2022版+SSMS下载安装教程,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-10-10使用linux CentOS本地部署SQL Server数据库超详细步骤
作为一名Linux爱好者,我们在使用Linux系统的时候,经常需要使用到数据库,下面这篇文章主要给大家介绍了关于使用linux CentOS本地部署SQL Server数据库的超详细步骤,需要的朋友可以参考下2024-01-01SQL Server误区30日谈 第21天 数据损坏可以通过重启SQL Server来修复
SQL Server中没有任何一项操作可以修复数据损坏。损坏的页当然需要通过某种机制进行修复或是恢复-但绝不是通过重启动SQL Server,Windows亦或是分离附加数据库2013-01-01
最新评论