You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用OPENROWSET(BULK)导入数据出现语法错误,请求排查问题原因

问题:SQL语句执行报错原因分析

我执行了以下SQL代码:

SELECT * FROM master.initial;

INSERT master.initial (IDSUBJECT ,IDTEACHER , Initial)
SELECT '1', '1', Initial. *
FROM OPENROWSET
(BULK 'C:\docs\diplom\data.docx', SINGLE_BLOB)  Initial;

执行后出现语法错误,错误截图如下:
SQL语法错误截图

该代码来源于某SQL Server相关技术博客,请问问题出在哪里?


错误原因分析

问题出在SELECT '1', '1', Initial. *这一行:

  • 使用OPENROWSET(BULK ... SINGLE_BLOB)读取文件时,返回的结果集仅有一列,列名为BulkColumn,不能用表别名加*的方式引用这一列,SQL Server无法识别这种写法。

修正后的代码

将Initial. *替换为Initial.BulkColumn即可:

SELECT * FROM master.initial;

INSERT master.initial (IDSUBJECT ,IDTEACHER , Initial)
SELECT '1', '1', Initial.BulkColumn
FROM OPENROWSET
(BULK 'C:\docs\diplom\data.docx', SINGLE_BLOB)  Initial;

内容的提问来源于stack exchange,提问作者aybb_2000

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 17:40:44