社区
Oracle
帖子详情
关于带参数的游标问题
leborety
2005-09-26 08:05:04
有游标如下:
cursor mycur(v_ename varchar2) is
select * from emp where ename in v_ename;
传一个字符串
l_ename := 'test,test';
或
l_ename :='''test'',''test''';
这两种我都试了,均报错。不知道应传入什么形式的字符变量。
(l_ename := 'test';测试通过)
...全文
181
11
打赏
收藏
关于带参数的游标问题
有游标如下: cursor mycur(v_ename varchar2) is select * from emp where ename in v_ename; 传一个字符串 l_ename := 'test,test'; 或 l_ename :='''test'',''test'''; 这两种我都试了,均报错。不知道应传入什么形式的字符变量。 (l_ename := 'test';测试通过)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
leborety
2005-09-27
打赏
举报
回复
呵呵,我已经在测试的时候改好了
给分
waterfirer
2005-09-27
打赏
举报
回复
我写错了,是这样
instr(v_ename,ename,1)>0
leborety
2005-09-27
打赏
举报
回复
packe_peng_520()
我想你不完全明白我的意思
解释下我的意思:
一般,我们的sql语句是
select * from emp where ename in ('test1','test2','test3');
现在,我要把这个sql语句放入游标,但是,in后面的值,我希望作为参数传入。不确定test_n这个n的值。我的目的不是研究'()'
xiao_fang(frank)
你的方法我知道,这里只是想知道我的操作有什么问题。
waterfirer(水清)
--这种办法不行,那是一个字符串,跟等于号没区别。
你的回答可以解释我的问题,谢了
waterfirer
2005-09-27
打赏
举报
回复
这种办法不行,那是一个字符串,跟等于号没区别。
你可以这样instr(v_ename,ename,1,length(v_ename))>0
laofang
2005-09-27
打赏
举报
回复
用这样的动态游标可以解决:
type cur is ref cursor;
cr cur;
begin
sqlstr:='select * from emp where ename in (' || v_ename || ')';
open cr for sqlstr;
loop
fetch cr into ...
exit when cr%notfound;
...
end loop;
end;
packe_peng_520
2005-09-27
打赏
举报
回复
我知道樓主的意思了,
传一个字符串
l_ename := 'test,test';
或
l_ename :='''test'',''test''';
然後用ename in l_ename 來判斷ename是不是在l_ename這個字符串裡面,是不是這個意思呢,
這樣是不行的,in後跟一個集合,當然集合可以是一個元素,當只有一個元素時,括號可以省略,但樓主的l_name,就是一個只含有'''test'',''test'''這個字符的集合,所以(l_ename := 'test';测试通过)這個是可以通過測試的,我的確不明白樓主為什麼要這麼做?我覺得這種方法也沒有研究的價值
超叔csdn
2005-09-27
打赏
举报
回复
()里面的东西也要加单引号啊.不过我没把握,我也没试过.
leborety
2005-09-27
打赏
举报
回复
to jxc(GameHeart)
你的方法适合固定变量数量,现在我并不知道逗号分开的字符串的个数。
to sbaz(万神渡劫)
'()'我试过的,不是这个问题
超叔csdn
2005-09-27
打赏
举报
回复
没试过,是不是少了'()'啊?
jxc
2005-09-27
打赏
举报
回复
cursor mycur(v_ename varchar2,v_ename2 varchar2) is
select * from emp where (ename = v_ename or ename=v_ename2);
packe_peng_520
2005-09-27
打赏
举报
回复
樓主才給我五分???????????????????以後不回你的貼了
氣憤
C#调用
带
游标
的oralce存储过程
C#winform调用
带
输出
游标
和其它输出
参数
的oralce存储过程示例,有需要的网友可参考参考,实测通过
Oracle数据库
游标
使用大全
Oracle数据库
游标
使用大全 Oracle数据库
游标
使用大全Oracle数据库
游标
使用大全
oracle
游标
for要点.sql for
游标
.sql
带
参数
游标
.sql 动态
游标
.sql 动态
游标
1.sql 更新数据
游标
.sql 显性.sql 隐性.sql
游标
参数
的存储过程 存储过程高级教程
1、辛苦积累的课件 2、自己调试总结的代码:包括存储过程基础,异常,自定义函数,存储过程,
带
游标
参数
的存储过程,java调用存储过程返回多行记录
基于MySQL
游标
的具体使用详解
测试表 level ; 代码如下:create table test.level (name varchar(20));再 insert 些数据 ; 代码 初始化 代码如下:drop procedure if exists useCursor //建立 存储过程 create 代码如下:CREATE PROCEDURE useCursor...
Oracle
17,086
社区成员
55,238
社区内容
发帖
与我相关
我的任务
Oracle
Oracle开发相关技术讨论
复制链接
扫一扫
分享
社区描述
Oracle开发相关技术讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章