Oracle 无法执行SQL脚本语句

时间:2022-05-20 21:25:26
系统WIN7 64bit,开发工具Visual Studio 2013,使用微软自带的System.Data.OracleClient连接访问Oracle数据库(oracle11g),我把SQL语句COPY到SQL PULS中是可以执行数据查询的,
但是在VS2013中执行ExecuteReader()方法,就报ORA-00911: 无效字符的错误。

我查了一下,

我的是类似这种的SELECT * FROM (SELECT ROW_NUMBER() OVER(ORDER BY id) NUM,t.* FROM tablea t  ) tablea WHERE NUM BETWEEN 1 AND 25;

把最后面的;去掉 修改为

SELECT * FROM (SELECT ROW_NUMBER() OVER(ORDER BY id) NUM,t.* FROM tablea t  ) tablea WHERE NUM BETWEEN 1 AND 25 就可以执行了。

请问,如果我想执行两条SQL语句,中间用;分隔,请问如何处理?谢谢!
类似这种查询SELECT * FROM (SELECT ROW_NUMBER() OVER(ORDER BY id) NUM,t.* FROM tablea t  ) tablea WHERE NUM BETWEEN 1 AND 25;SELECT COUNT(*) FROM tablea

9 个解决方案

#1


一个语句是一个结果,两个语句要分两次Execute

#2


SQL SERVER数据库可以同时执行两条SQL语句(中间用;隔开),ORACLE数据库不行吗?有没有解决方法。

#3


我将 微软自带的System.Data.OracleClient,改成第三方ORACLE的Oracle.DataAccess.dll也不行,是不是代码写得有问题,还是这么改下?谢谢!

#4


没有人知道?

#5


写成存储过程,加begin end
http://blog.csdn.net/liyifei21/article/details/44806757
http://www.cnblogs.com/OwenWu/archive/2013/01/22/2870868.html

#6


一个语句 分 2行写不用加 “;” 只有一个语句结束后才可以加“;”

#7


引用 6 楼 qiaohuyue 的回复:
一个语句 分 2行写不用加 “;” 只有一个语句结束后才可以加“;”

不加分号,在程序查询时会报错的

#8


引用 5 楼 Chinajiyong 的回复:
写成存储过程,加begin end
http://blog.csdn.net/liyifei21/article/details/44806757
http://www.cnblogs.com/OwenWu/archive/2013/01/22/2870868.html


我看过了,如果是update语句是可以查询的。但是目前是select查询语句用begin end就有报错,如何解决!

#9


没有人知道?

#1


一个语句是一个结果,两个语句要分两次Execute

#2


SQL SERVER数据库可以同时执行两条SQL语句(中间用;隔开),ORACLE数据库不行吗?有没有解决方法。

#3


我将 微软自带的System.Data.OracleClient,改成第三方ORACLE的Oracle.DataAccess.dll也不行,是不是代码写得有问题,还是这么改下?谢谢!

#4


没有人知道?

#5


写成存储过程,加begin end
http://blog.csdn.net/liyifei21/article/details/44806757
http://www.cnblogs.com/OwenWu/archive/2013/01/22/2870868.html

#6


一个语句 分 2行写不用加 “;” 只有一个语句结束后才可以加“;”

#7


引用 6 楼 qiaohuyue 的回复:
一个语句 分 2行写不用加 “;” 只有一个语句结束后才可以加“;”

不加分号,在程序查询时会报错的

#8


引用 5 楼 Chinajiyong 的回复:
写成存储过程,加begin end
http://blog.csdn.net/liyifei21/article/details/44806757
http://www.cnblogs.com/OwenWu/archive/2013/01/22/2870868.html


我看过了,如果是update语句是可以查询的。但是目前是select查询语句用begin end就有报错,如何解决!

#9


没有人知道?