oracle 存储过程通过输入条件查询,返回多条记录和记录数。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 存储过程通过输入条件查询,返回多条记录和记录数。相关的知识,希望对你有一定的参考价值。

oracle 存储过程通过输入条件查询,返回多条记录、记录数、响应码和响应信息。查询条件为模糊查询,最少两个参数;响应码和响应可以自己定义。如果有记录返回码为:0000、返回信息为:有记录;如果没有记录返回吗为:9999、返回信息为:没有找到需要的数据。求高手帮忙写一个存储过程。非常感谢!!!

create or replace procedure Pro_Test(Conditions in varchar,
Codeing out char,
resmessage out varchar) is

v_Num number(2);
begin

select count(*) into v_Num from emp where ename like '%Conditions%';

if v_Num = 0 then
Codeing := '9999';
resmessage := '没有找到需要的数据';
else
Codeing := '0000';
resmessage := '有记录';
end if;
end Pro_Test;

照着上面的样式,再根据自己的需要改下吧。
参考技术A create or replace procedure p_find_data(scon varchar2)
is
ocur ref cusrosr ;
begin
open ocur for ('select * from tbname where '||scon)

end ;

如何在oracle数据表中一次性插入多条记录?

看是什么样子的插入法。
如果是从其他的表导入那么用insert into+表名(字段)(字段入围全部可以不写)+as select+字段+from+数据来源表名 where+条件;(注意:前后字段顺序一致)
如果从外部表导入,那么就没什么问题sqllar导入。
如果是需要手动的输入,那么我建议就建立外部表,然后用sqllar去倒,可以每次输入都同时输入一张外部表,然后用sqllar导入,这样就可以了。
参考技术A 插入多条数据通过INSERT INTO ... VALUES ...这样肯定不行。
如果这多条数据是从一个表中提取出来的,可以使用INSERT INTO TABLE SELECT COLUMN(或者是定值) FROM TABLE ...这样的形式来实现多条的插入。
参考技术B insert into doc_data (code,id,value,state)

select '13','川A','成都市公安局交通警察支队车辆管理所',0 from dual

union all select '13','川B','绵阳市公安局交通警察支队车辆管理所',0 from dual

union all select '13','川C','自贡市公安局交通警察支队车辆管理所',0 from dual

union all select '13','川D','攀枝花市公安局交通警察支队车辆管理所',0 from dual

....
...
..
参考技术C 如果是从某一张表里筛选出来了,就用楼上的方法。
如果是单纯的插数据,就只能一条条的插,没有捷径的。
参考技术D insert into table select
(
'B',select typeid from table where userid ='A');

--------------------------
写成这样试试
另外,虚机团上产品团购,超级便宜

以上是关于oracle 存储过程通过输入条件查询,返回多条记录和记录数。的主要内容,如果未能解决你的问题,请参考以下文章

带有可能缺少某些搜索条件的查询的 Oracle 存储过程

MYSQL的存储过程如何返回查询到的行数据?

Oracle中delete使用in做条件删除多条时删除失败

在oracle里,多条返回结果,如何只能返回一条

mysql存储过程实现数据查询与插入

JAVA获取ORACLE存储过程返回结果集的问题