刚刚接触oracle,请大家帮忙,我有以下几个问题:
1.我想写一个纯粹查询语句的存储过程,执行此存储过程后返回查询结果的纪录集。
例如:两个输入参数 start_id,end_id,目的是要查询表中id在这两个参数之间的所有数据
select * from test where test.id > start and test.id < end_id
这在sqlserver中是没有问题的,不过在oracle中编译的时候提示 :SELECT 语句中缺少 INTO 子句。我想问一下,oracle中查询的存储过程必须要有输出参数吗?查询结果是通过输出参数传出来的吗?如果不是,要想达到我的目的,此存储过程应该怎么写。如果是,请看第2个问题2.我是用vc++.net开发,程序中我用ado调用此存储过程,以前调用存储过程的时候把查询结果返回给纪录集就可以了。
如:_RecordsetPtr pRst = pCmd->Execute(NULL,NULL,adCmdStoredProc);
如果oracle是通过输出参数把查询结果传出来的话,这么写肯定不行,那么在绑定输出参数的时候应该给输出参数什么类型呢?
谁有类似的程序例子,给一个好吗?
1.我想写一个纯粹查询语句的存储过程,执行此存储过程后返回查询结果的纪录集。
例如:两个输入参数 start_id,end_id,目的是要查询表中id在这两个参数之间的所有数据
select * from test where test.id > start and test.id < end_id
这在sqlserver中是没有问题的,不过在oracle中编译的时候提示 :SELECT 语句中缺少 INTO 子句。我想问一下,oracle中查询的存储过程必须要有输出参数吗?查询结果是通过输出参数传出来的吗?如果不是,要想达到我的目的,此存储过程应该怎么写。如果是,请看第2个问题2.我是用vc++.net开发,程序中我用ado调用此存储过程,以前调用存储过程的时候把查询结果返回给纪录集就可以了。
如:_RecordsetPtr pRst = pCmd->Execute(NULL,NULL,adCmdStoredProc);
如果oracle是通过输出参数把查询结果传出来的话,这么写肯定不行,那么在绑定输出参数的时候应该给输出参数什么类型呢?
谁有类似的程序例子,给一个好吗?
就是想达到ms sql中这样的存储过程的作用:CREATE PROCEDURE test(@Start_ID [numeric],@End_ID [numeric])
AS
SELECT * FROM tbl_test where ID > @Start_ID and ID < End_ID ORDER BY T_DataTime
GO然后把结果集返回给ADO中的记录集就可以。请帮忙看一下,最好写一下存储过程和程序的实现
我写了一个存储过程,不过我执行的时候看不到结果
我在存储过程中写了
dbms_output.put_line(v_id||v_data);//v_id 和v_data是表中的两列
目的想让其输出结果。
但是我在sql plus中执行execute test.PRO_TEST(1 ,6);//PRO_TEST是过程名,此过程就2个输入参数,我想在过程中输出结果,所以在过程中写的dbms_output
执行后显示过程成功完成,不过没有任何显示
怎样写才能让其看到其输出呢?或者有没有类似ms sql的查询分析器的工具,给介绍几个,谢谢!!!
你能不能说的详细点,是个工具的名称吗?在哪可以下载?
你说的不会是oracle提供的sql plus这个工具吧,我觉得这个oracle自带的工具用着特别不方便
请详细的说一下,好吗?
...
....
dbms_output.put_line
oracle中查询出来的数据必须赋变量或游标