【发布时间】:2016-05-25 15:28:48
【问题描述】:
我正在尝试将 XML 表导入 SQL 表。我在 SQL Server 数据库中创建了一个基本表,但出现错误:
找不到列“var1”或用户定义的函数或聚合“var1.value”,或者名称不明确。
代码:
declare @xmldata as xml
set @xmldata = (SELECT CONVERT(XML, BulkColumn)AS Bulkcolumn
FROM OPENROWSET (BULK '<filename>.xml', SINGLE_BLOB) as X)
INSERT INTO table1(var1, var2, var3)
SELECT
var1 = var1.value('var1', 'int'),
var2 = var2.value('var2', 'int'),
var3 = var3.value('var3', 'int')
我一定是哪里出了问题,特别是当我尝试将它导入 SQL Server 表时。
【问题讨论】:
-
这部分是做什么的?
var1.value('var1', 'int')- 你像调用函数一样调用它。 -
插入部分我不完全确定,但我的目标是将 XML 文件放入 sql 表中。我在这个网站上环顾四周,这是我对如何做到这一点的理解。根据我的逻辑,var 部分可能会将值插入到 sql 表中?
-
看看我的回答。我认为第三个查询是您想要的。
-
你好唐纳德。您正在将 XML 从文件中读取到变量
@xmldata中。如果您尝试SELECT @xmldata;,您将看到结果(单击它)。请发布此结果以帮助您。目前你正在阅读你的 XML,但之后你没有做任何事情...... -
嘿Shnugo,很遗憾,由于文件中填充了个人信息,我无法向您显示太多详细信息,但是通过使用select语句,我很少看到xml文件。
标签: sql xml sql-server-2005