oracle绑定变量过多,oracle - 在SQL Plus中使用绑定变量并返回多行? - 堆栈内存溢出...
这是一个愚蠢的问题,但我似乎无法解决。 我有一个查询在OCI程序中引起麻烦,因此我想在SQL * Plus中手动运行它以检查是否有任何区别。 这是查询:
select e.label as doc_name,
e.url,
i.item_id,
'multi' as form_type
from cr_items i, cr_extlinks e
where i.parent_id = :comment_id
and e.extlink_id = i.item_id
UNION
select null as doc_name,
utl_raw.cast_to_varchar2(DBMS_LOB.SUBSTR(r.content, 2000, 1)) as url,
r.item_id,
'single' as form_type
from cr_revisions r
where r.revision_id = ( select content_item.get_latest_revision(:comment_id) from dual);
end;
我想将comment_id绑定到值3052753,所以我做了以下工作:
DECLARE
comment_id number := 3052753;
BEGIN
select e.label ,
e.url,
i.item_id,
'multi'
from cr_items i, cr_extlinks e
where i.parent_id = :comment_id
and e.extlink_id = i.item_id
UNION
select null ,
utl_raw.cast_to_varchar2(DBMS_LOB.SUBSTR(r.content, 2000, 1)) as url,
r.item_id,
'single'
from cr_revisions r
where r.revision_id = ( select content_item.get_latest_revision(:comment_id) from dual);
END;
/
这给出了这个错误:
ORA-06550: line 4, column 1:
PLS-00428: an INTO clause is expected in this SELECT statement
现在,我已经很不高兴了,因为我不想从根本上更改此查询,但是无论如何我都会努力并提出这个建议(INTO和UNION并不太顺利):
DECLARE
comment_id number := 3052753;
x_label VARCHAR2(50);
x_url VARCHAR2(500);
x_item number;
x_thing VARCHAR2(50);
BEGIN
select label, url, item_id, thing into x_label, x_url, x_item, x_thing from (
select e.label ,
e.url,
i.item_id,
'multi' as thing
from cr_items i, cr_extlinks e
where i.parent_id = :comment_id
and e.extlink_id = i.item_id
UNION
select null ,
utl_raw.cast_to_varchar2(DBMS_LOB.SUBSTR(r.content, 2000, 1)) as url,
r.item_id,
'single' as thing
from cr_revisions r
where r.revision_id = ( select content_item.get_latest_revision(:comment_id) from dual)) ;
END;
/
但是现在,当然,因为我要返回的行多于1行,所以我完全可以预测
ORA-01422: exact fetch returns more than requested number of rows
现在,我可以继续使用游标等了,但是我的小查询越来越偏离它的原始自我了。 我要做的就是检查查询是否以该comment_id值正常运行。 当然,我可以将comment_id硬编码到查询中,并且工作正常。 但是它在OCI中也可以正常工作,因此我将在SQL * PL中重现该问题以及在OCI代码中看到的绑定变量。 但是,为什么要在SQL * Plus中做到这一点却如此艰难呢? 我是否错过了一些显而易见的事情?
数据库是Oracle 10.2.0.1.0-64位在Red Hat Enterprise Linux ES版本4(Nahant Update 8)上运行
oracle绑定变量过多,oracle - 在SQL Plus中使用绑定变量并返回多行? - 堆栈内存溢出...相关推荐
- oracle颜色,oracle - Oracle SQL Developer - 如何使用颜色显示百分比(非数字) - 堆栈内存溢出...
我提供了另一个示例,简化了如何使用0到100的基本百分比,而不使用阈值选项. WITH fake_data AS ( SELECT 20 AS perc, 1001 AS entity FROM du ...
- mysql 生明变量_在 MySQL 的 SQL 文件中,定义变量与使用变量
1.现阶段存在一个新需求,需要在部署产品时,针对产品做一些初始化数据的工作.预先准备好相应的 SQL 文件.由于需要执行多条 SQL 语句,且后续的 SQL 语句依赖于之前的 SQL 语句生成的主键 ...
- SQL Server中的表变量
In this article, we will explore the table variable in SQL Server with various examples and we will ...
- 在SQL存储过程中给条件变量加上单引号
在SQL存储过程中给条件变量加上单引号,不加语句就会出问题,以下就是在存储过程中将条件where设置成了动态变化的,给where赋完值再和前面的语句拼接,再execute(SQL) set @wher ...
- oracle java 绑定变量的值_Oracle SQL调优之绑定变量用法简介
最近在看<基于Oracle的SQL优化一书>,并做了笔记,作者的个人博客:http://www.dbsnake.net/ @ 一.SQL执行过程简介 继上一篇博客Oracle的cursor ...
- 【C# .NET】Oracle数据库连接的坑之传入parameters参数名SQL语句中的参数变量名不匹配(顺序不一致)的问题
问题描述 有一个user表,需要修改id为10086的用户的姓名和年龄,在C#的后台这样写: using (IDbConnection db = DapperFactory.GetConnection ...
- datagrip 导出 Oracle 数据库结构和数据到sql脚本中
文章目录 1. 问题描述 2. 数据库右键 -- 仅对 MySQL 和 PostgreSQL 有效 1. MySQL 备份 -- mysqldump 2. PostgreSQL 备份 -- pgdum ...
- oracle rfs进程过多,Oracle物理备库RFS进程消失,不能启动--解决
今天在测试Oracle环境上做热备,发现RFS进程不存在,做了如下操作后,还是不行: 1.拷贝主库的密码文件到备库 2.重启备库,也重启了主库,并alter system switch logfile ...
- oracle不使用游标,oracle – 为什么我们不能在动态SQL语句中使用强引用游标?
这是一个带有强类型引用游标的过程: SQL> create or replace procedure p1 is 2 type dept_rc is ref cursor return dept ...
最新文章
- Linux-CentOS 重置root密码
- RxSwift之深入解析如何创建观察者Observer
- [蓝桥杯][算法提高VIP]聪明的美食家-dp
- 查看Full GC方法:1,jconsel:2,linux 命令: jstat -gcutil id 4s 10003,linux 命令(前提有.gc日志):c
- 王者归来!华为P40 Pro渲染图曝光:后置矩阵徕卡五摄模组
- XJOI网上同步训练DAY6 T2
- html5 手机上传视频,【报Bug】手机h5端收不到选择视频以及上传视频回调
- eth0: ERROR while getting interface flags: No such device
- c语言——约瑟夫环(数组)
- 我的vscode插件和setting设置(解决vscode保存出现提示运行“XXX“的保存参与者: 快速修复“的问题;二来修复“明明开启的是去分号和单引号,自动保存又自动添加了分号和双引号)
- This dependency was not found: * common/stylus/index.styl in ./src/main.js
- java 模板模式_java设计模式之模板方法模式详解
- WinForm中新开一个线程操作窗体上的控件(跨线程操作控件)GOOD
- PowerManager深入分析
- 知乎高赞:无人驾驶什么时候才会凉凉,估计还要多久?
- 【过了】系统分析师考试心得
- redis数据结构及其应用场景
- Axure9中点击变颜色、形状等样式操作
- 2015年江苏省信息与未来小学生编程思维展示活动试题--加数
- 记录自己激光打眼手术过程
热门文章
- .NET Core / C# 开发 IOT 嵌入式设备的个人见解
- .net core上 K8S(七).netcore程序的服务发现
- CentOS ASP.NET Core Runtime Jexus跨平台布署
- .Net思想篇:为何我们需要思想大洗礼?
- SCF: 简单配置门面
- C#使用Xamarin开发可移植移动应用进阶篇(10.综合演练,来一份增删改查CRUD)
- SQL Server 2017 RC1 现已实现 Linux 功能扩展
- 塑造Visual Studio的未来
- 与微软.NET创始人Scott Guthrie面对面,“红衣教主”亲身传授推动成功转型的洪荒之力
- 02.CSS基础笔记及导入