Oracle存储过程 使用游标、数组的配合查询
查询输入的门牌号码是否在标准门牌库中存在。存在则返回相应的号码。
public string GetValidate(){
OracleConnection conn = ConnectOra();
string retRepMphm;
try
{
conn.open();
OracleComandType cmd=conn.CreateCommand();
cmd.CommandType=Commandype.StoredProcedure;
cmd.CommandText=""sp_querybzdm;
OracleParameter[] parameters =new OracleParameter[];
parameters[]=new OracleParameter("mplxs",OracleType.VarChar);
parameters[]=new OracleParameter("bzdms",OracleType.VarChar);
parameters[]=new OracleParameter("mphms",OracleType.VarChar);
parameters[]=new OracleParameter("remphm",OracleType.VarChar,);
parameters[].Value="大门牌";
parameters[].Value="吕岭路";
parameters[].Value="1号";
parameters[].Value=ParameterDirection.Output;
foreach(OraclePrameter parameter in parameters)
cmd.Parameters.Add(parameter);
}
cmd.ExecuteNonQuery();
retRepMphm=parameters[].value==null?"":parameters[].Value.Tostring();
catch(Exception){}
throw ex;
}
finaly{
conn.close();
}
create or replace proceduce sp_querybzdm
(
mplxs in varchar2;----定义变量
bzdm in varchar2;
mphms in varchar2;
remphm out varchar2 ---输出变量
) is
countnum number;
--游标
cursor curmas is
select regexp_substr(mphms ,'[^,]+',,level) as we
from dual
connect by level<=length(mphms )-length(replace(mphms,','))+
begin
for row_ma in curmas loop
begin
select count(*) into countnum from YW_LMP_QD where BZHM=row_mas.we ;
if(count(*)<>) then
if str_result is not null then
str_result:=str_result||','|| row_ma.we
else
str_result:=row_ma.we
end if;
end if;
end
end loop;
if str_result is not null then
remphm:=rtrim(str_result,',');
end if
end
Oracle存储过程 使用游标、数组的配合查询的更多相关文章
- (转)oracle 存储过程 带游标作为OUT参数输出
(转)oracle 存储过程 带游标作为OUT参数输出 存储过程返回OUT参数的游标 例子. 包中带过程 要自己定义一个type [cur_name] is ref cursor游标,返回的时候就直接 ...
- oracle存储过程和游标的使用
oracle存储过程和游标的使用 (2011-04-19 14:52:47) 转载▼ 游标: 用来查询数据库,获取记录集合(结果集)的指针,我们所说的游标通常是指显式游标,因此从现在起没有特别指明的情 ...
- Java调用oracle存储过程通过游标返回临时表数据
注:本文来源于 < Java调用oracle存储过程通过游标返回临时表数据 > Java调用oracle存储过程通过游标返回临时表数据 项目开发过程中,不可避免的会用到存储过程返回结 ...
- Oracle存储过程、游标、函数
SQL99是什么 (1)是操作所有关系型数据库的规则 (2)是第四代语言 (3)是一种结构化查询语言 (4)只需发出合法合理的命令,就有对应的结果显示 SQL的特点 (1)交互性强,非过程化 (2)数 ...
- myBatIs.Net 调用Oracle 存储过程返回游标
找了好久,网上也没示例,全是java的,没办法,后来看到一个网上别人写的例子. http://www.myfirm.cn/blog/article/Control/13.html 上面照套还是出错,我 ...
- Oracle存储过程返回游标实例详解
复制代码 代码如下:CREATE OR REPLACE PROCEDURE PROCSENDEMAIL(P_TXT VARCHAR2, P_SUB VARCHAR2, P_SENDOR VARCHAR ...
- oracle存储过程和游标参考
oracle open cursor forhttp://www.itpub.net/thread-1874683-1-1.html
- mybatis调用oracle存储过程 out游标类型参数 如何赋给java map
<resultMap id="ticketInfosResultMap" type="Map"> <!--result要是默认用列名的话完全不 ...
- oracle 存储过程、游标参考实例
create or replace procedure INIT_DICT_QUEUECODE(p_queueId int,p_paramType in varchar2,p_queenName in ...
随机推荐
- 解决struts2配置文件没有提示的问题
1.在WEB-INF下新建一个dtd文件夹 2.将
- 安装jansson库【JSON库C语言版】
本次操作在Ubuntu 14.04下进行,其他的系统大同小异,安装软件时请根据系统版本进行调整. 1.下载jansson源码: git clone https://github.com/akheron ...
- HTML高级标签(2)————窗体分帧(2)————后台管理页面
使用frameset进行窗体分帧.构建简易的后台页面.这篇博客就作为一个简易后台管理页面的实战演练. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3px ...
- Java之可变参数
Java中支持可变参数 意思就是:参数的个数可以根据需要写,你可以写1个.2个.3个....他们都被保存到一个参数的数组中. 但是这些参有一些约束:他们必须是同类型的,比如都是String字符串类型. ...
- #ifndef #define #endif 防止头文件被重复引用
想必很多人都看过“头文件中的 #ifndef/#define/#endif 防止该头文件被重复引用”.但是是否能理解“被重复引用”是什么意思?是不能在不同的两个文件中使用include来包含这个头文件 ...
- Apache+tomcat的整合
http://blog.csdn.net/stefyue/article/details/6918542 为什么要做这个整合呢?当然,首先想到是就是Apache和Tomcat的区别.正因为有区别,有各 ...
- 开启MongoDB 脚本和设置window自启
wwchen: D: cd D:\Program Files\MongoDB\Server\3.2\bin mongod --dbpath=D:\mongodb\db----------------- ...
- jqGrid实现虚拟滚动和合并单元格
如图: 关键点:1.scroll: 1, //虚拟滚动,解决大数据一次性加载慢的问题,同时解决分页 2.function merge(names)//自定义函数 $(function () { //查 ...
- Unix环境下PS1变量的设置
我的ps1命令提示符: export PS1="\[\e[31;1m\]\u @ \[\e[34;1m\]\h \[\e[36;1m\]\w \[\e[33;1m\]\t $ \[\e[37 ...
- django接收和发送json数据
通过json.jumps处理字典数据, 发送给前端 def get_context_data(self, **kwargs): ctx = super(HelpUpdateView, self).ge ...