如何将XML文件导入SQL Server 2012
我有一个XML文件要导入到如何将XML文件导入SQL Server 2012,sql,sql-server,xml,Sql,Sql Server,Xml,我有一个XML文件要导入到SQLServer2012。我以前没做过,知道的也不多。经过一些研究,我尝试使用在SQLServerManagementStudio中运行的以下命令打开xml文件 SELECT CAST(x as XML) FROM OPENROWSET( BULK 'C:\bulk\Users_test1111.xml', SINGLE_BLOB ) AS X 为此,我得到以下错误: Msg 4861, Level 16, State 1, Line 1 Cannot bulk
SQLServer2012
。我以前没做过,知道的也不多。经过一些研究,我尝试使用在SQLServerManagementStudio中运行的以下命令打开xml文件
SELECT CAST(x as XML) FROM OPENROWSET(
BULK 'C:\bulk\Users_test1111.xml',
SINGLE_BLOB
) AS X
为此,我得到以下错误:
Msg 4861, Level 16, State 1, Line 1
Cannot bulk load because the file "C:\bulk\Users_test1111.xml" could not be opened. Operating system error code 3(The system cannot find the path specified.).
您建议如何将文件放入数据库?使用SSIS。
使用XML数据源创建SSIS包。
如果您不能使用/没有集成服务,请使用UNC文件路径来消除本地/网络问题
编辑:我在口吃之前没有练习google fu,我最初的一个想法是不正确的。使用SSIS。
使用XML数据源创建SSIS包。
如果您不能使用/没有集成服务,请使用UNC文件路径来消除本地/网络问题
编辑:我没能在口吃之前练习google fu,我最初的一个想法是不正确的。试试这个,我增加了一些专栏向你展示 文件还需要位于服务器本身(路径需要位于服务器上)
试试这个,我包括了一些额外的专栏向你展示 文件还需要位于服务器本身(路径需要位于服务器上)
我猜你和我有同样的问题。使用SQL Server加载文件时使用的一些命令要求文件位于实际的DB服务器上。如果您是从另一台计算机上运行SQL Server Management Studio,则会出现此问题。我猜您的问题与我的问题相同。使用SQL Server加载文件时使用的一些命令要求文件位于实际的DB服务器上。如果您是从其他计算机运行SQL Server Management Studio,则会出现此问题。错误消息
系统找不到指定的路径。
表明无法找到文件所在的位置。检查它是否真的在那里。@jpg它在,但在本地。它是否应该与sql server位于同一台服务器上?因为您引用的路径是该计算机的本地路径,所以在其上运行的查询必须是该计算机上有效的路径。所以是的。@jpw好的,这个问题解决了。现在,如何将该文件导入sql server?您所说的“导入”是什么意思?是否要将其“按原样”存储在XML列中?或者将其解析为多行?错误消息系统无法找到指定的路径。
表明无法在文件应位于的位置找到该文件。检查它是否真的在那里。@jpg它在,但在本地。它是否应该与sql server位于同一台服务器上?因为您引用的路径是该计算机的本地路径,所以在其上运行的查询必须是该计算机上有效的路径。所以是的。@jpw好的,这个问题解决了。现在,如何将该文件导入sql server?您所说的“导入”是什么意思?是否要将其“按原样”存储在XML列中?或者将其解析为多行?
INSERT INTO TestTable(TestId, TestXml, TestText)
Values('1', (
SELECT * FROM OPENROWSET(
BULK 'C:\bulk\Users_test1111.xml',
SINGLE_BLOB) AS x), 'Some Test Text')