暂无图片
求问:Oracle存储过程提示缺失关键字怎么办?
我来答
分享
zwy2008
2021-07-06
求问:Oracle存储过程提示缺失关键字怎么办?

declare
v_sql varchar2(5000);
user_id varchar2(20);
offer_id number(20);
bill_id number(20);
offer_inst_id number(20);
region_code varchar2(3);
begin
region_code:=‘240’;
bill_id :=‘187****0000’;
offer_id :=‘111130501100’;
/user_id := ‘100079432826’;
offer_inst_id :=‘30000535505378’;
/
/select user_id into user_id from so1.ins_user_region_cod where bill_id = bill_id;
select offer_inst_id into offer_inst_id from so1.ins_offer_region_cod where user_id=user_id and offer_id=offer_i ;
/

v_sql:=‘select user_id into user_id from so1.ins_user_’||region_code||’ where bill_id = ‘||bill_id||’ ‘;
execute immediate v_sql;
v_sql:=‘select offer_inst_id into offer_inst_id from so1.ins_offer_’||region_code||’ where user_id=’||user_id||’ and offer_id=’||offer_id||’ ‘;
execute immediate v_sql;
v_sql:=‘update so1.ins_offer_’||region_code||’ set expire_date = sysdate where user_id=’||user_id||’ and offer_inst_id = ‘||offer_inst_id||’’;

   execute immediate v_sql;
复制

commit;

end;

我来答
添加附件
收藏
分享
问题补充
1条回答
默认
最新
上善若水

v_sql:=‘select user_id from so1.ins_user_’||region_code||’ where bill_id = ‘||bill_id||’ ';
execute immediate v_sql into user_id;
你可以试一试!

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
Oracle两个节点的asm日志一直出现NOTE:voting file relocation is required in diskgroup OCR 大佬们 这个算是报错嘛 两个节点的asm日志都一直出现这个信息
回答 3
已采纳
要么打补丁,要么进行磁盘组重建
Oracle 11.2中分区表查询时条件用自定义函数解释计划能识别正确,19c就要搜索全部分区,这是什么问题?
回答 1
提供个示例。如有建表SQL一并提供更好。
Oracle 如果A盘有坏道,使用dd把A盘备份到B盘,坏道也会备份过去吗?
回答 2
物理层面坏掉,不行了
ORA-04063: 不存在或无效的程序或包体?可是明明有啊
回答 1
已采纳
ALTERPROCEDUREYOURPROCEDURECOMPILE;ALTERFUNCTIONYOURFUNCTIONCOMPILE;ALTERPACKAGEYOURPACKAGECOMPILEBO
oracle查询历史sql信息
回答 2
DBAHISTSQLTEXTdbahistsqlstatDBAHISTSQLBINDDBAHISTSQLPLAN,你找找历史的视图查询一下,如果这个都没有那就是被刷出去了。或者SQL执行效率很高,or
RAC运行时,是否可以删除它在ASM中的的数据文件?
回答 4
已采纳
这个看你出于什么目的要删除这个文件,删数据文件肯定是可以的,将这个文件或者表空间offline就可以了。但是为啥要删掉呢?
oracle 11g 使用EXpdp 导出数据如何优化导出速度, CPU是32逻辑cpu
回答 4
已采纳
不到每秒10m的落地速度,瓶颈可能在数据库。看下是不是主要是几张表慢?这张表是否有lob类字段。是否有行链接、行迁移问题。
Latch和Lock有什么区别?
回答 1
已采纳
从某种意义上说,Latch是内存中的资源锁,数据库对象(表,索引等)的锁叫Lock。Latch和Lock的区别:(1)Latch是对内存数据结构提供互斥访问的一种机制,而Lock是以不同的模式来套取共
想用虚拟机部署一套 windows 的11g rac,共享存储怎么模拟?
回答 3
vmware和VirtualBox都可以实现共享存储设定!
oracle 16401问题
回答 9
升级问题到:紧急故障