怎么在vb中运行多行sql语句?比如说这句

declare@markaint,@markbint,@markcint,@markdint,@markeintselect@marka=count(*)fromSCwh... declare @marka int,@markb int,@markc int,@markd int,@marke int select @marka= count(*) from SC where Grade>=90
。。。select @marka as more90,@markb as b80a90,@markc as b70a80,@markd as b60a70,@marke as less60
上面的sql语句在查询分析器上有反馈:

但是在vb上运行却没有任何反馈,为什么呢?
另外:我这样运行的(
sqlRc.CursorLocation = adUseClientstr = "declare @marka int,@markb int,@markc int,@markd int,@marke int " & _ "select @marka= count(*) from SC where Grade>=90" & _ "select @marka as more90,@markb as b80a90,@markc as b70a80,@markd as b60a70,@marke as less60"sqlRc.Open str, sqlCnSet DataGrid1.DataSource = sqlRc
展开
 我来答
LzSkyline
2014-04-16 · TA获得超过565个赞
知道小有建树答主
回答量:578
采纳率:0%
帮助的人:304万
展开全部
你这个语法错误了 VB想要同时执行多行SQL很简单 每行代码结束加一个分号;就可以了,你的那个& _这是vb里面换行的代码 和sql无关 纯粹是一个代码阅读起来的效果,sql代码后加分号 即使全输到一行也是正确的语句
更多追问追答
追问
请问语法是哪里错了呢?在查询分析器上面有反馈啊,运行vb的时候也没报错,就是没有表显示出来。
追答
因为vb代码中不支持这样的多行查询 不过查询分析器是可以执行多行语句的  所以你用vb就得加上分号
buhui2013
2014-04-16
知道答主
回答量:21
采纳率:100%
帮助的人:7.6万
展开全部
str每行后要加英文的分号“;” , 不返回的我以前试过可以(多条update的),要返回记录集可以这样:set sqlRc = sqlCn.excute(str),我没试过,试试看吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
梦里寻你我他
2014-04-16 · TA获得超过2199个赞
知道大有可为答主
回答量:2171
采纳率:42%
帮助的人:1215万
展开全部
想执行多条sql语句,你可以写个存储过程,然后在vb里调用存储过程
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式