+ -
当前位置:首页 → 问答吧 → Oracel 的plsql语法设定

Oracel 的plsql语法设定

时间:2011-09-23

来源:互联网

v_sql varchar2(1000);
 
v_sql:='select * from emp';--定义sql变量

在这句
 open p_cursor for v_sql;--执行sql语句放到游标里面

有个问题就是在v_sql:='select * from emp'我要加个where条件还有个TO_DATE(V_START_DATE,'YYYY-MM-DD-24HH:MI:SS');

这样的话就是这样了
v_sql:='select * from emp where e.hireDate between TO_DATE(V_START_DATE,'YYYY-MM-DD-24HH:MI:SS') and TO_DATE(V_END_DATE,'YYYY-MM-DD-24HH:MI:SS');'

这样的话语法一直报错,不指定怎么去处理

作者: laol846   发布时间: 2011-09-23

具体的游标声明了吗?没有声明一定会报错误的。

作者: lzd_83   发布时间: 2011-09-23

引用 1 楼 lzd_83 的回复:
具体的游标声明了吗?没有声明一定会报错误的。


我的意思是v_sql := "select count(*) from BILL_CC_LOG_IDLE where BUSY_TIME between TO_DATE(in_start_time, 'yyyy-mm-dd hh24:mi:ss') and TO_DATE(in_end_time, 'yyyy-mm-dd hh24:mi:ss') and FREE_TIME is not null";
这句话表一报告错误,是怎么去处理,一个varchar2的变量,里面还包含单引号的处理情况

作者: laol846   发布时间: 2011-09-23

你拼错了

应该是
v_sql := "select count(*) from BILL_CC_LOG_IDLE where BUSY_TIME between TO_DATE("||in_start_time||", 'yyyy-mm-dd hh24:mi:ss') and TO_DATE("||in_end_time||", 'yyyy-mm-dd hh24:mi:ss') and FREE_TIME is not null";

作者: momotou11   发布时间: 2011-09-23

变量用引号传入

作者: momotou11   发布时间: 2011-09-23

错误号是多少,贴出来看看!

作者: cosio   发布时间: 2011-09-23

热门下载

更多