SQL存储过程中提示“'+' 附近有语法错误。应为','或';'”。请问这段代码错在何处? 20

 我来答
匿名用户
2013-09-05
展开全部
sql 语句是可以跨行的。
但是你那里, 是一个字符串的参数, 需要 写在一行里面, 不要跨行啊.

从 E:\Test.xls 文件中,检索 Sheet1 中的数据。
SELECT *
FROM OpenDataSource(
'Microsoft.Jet.OLEDB.4.0',
'Data Source="E:\Test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$]

如果写在一行里面, 还是抱错的话。
那么建议是 定义一个变量来存储这个 参数了。
然后调用的时候, 只传递个参数变量即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
szm341
2013-09-05 · TA获得超过6726个赞
知道大有可为答主
回答量:5005
采纳率:100%
帮助的人:5109万
展开全部
openrowset函数貌似不支持参数化操作,如果要操作的话,需要拼接字符,
用exec(@sql)方式去执行
而且lz的into语句也不对,表名、字段名都不可以用变量表示,全部都必须用上面说的方法执行操作
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
382580322
2013-09-05 · TA获得超过757个赞
知道小有建树答主
回答量:639
采纳率:0%
帮助的人:332万
展开全部
每个参数放在一行上
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式