使用 SQLPlus 时如何设置 Oracle 绑定变量?
例子:
SELECT orders.order_no FROM orders WHERE orders.order_date BETWEEN :v1 AND :v2
Run Code Online (Sandbox Code Playgroud)
如何设置的日期:v1和:v2?
请注意以下几点:
VARIABLE 是一个 SQLPlus 命令。不以分号 (;) 结尾。
在 VARIABLE 命令中,不要在变量名之前使用冒号 (:)。
绑定变量不能是“日期”数据类型——它们是某种字符值。
因此,在您的代码中,您必须使用to_date()正确的格式模型或其他一些机制来将字符串转换为日期。您的代码中目前缺少这一点。永远不要将日期与字符串进行比较!
下面简要演示。
SQL> variable v1 varchar2(20)
SQL> exec :v1 := '2015/12/22';
PL/SQL procedure successfully completed.
SQL> select 1 as result from dual where to_date(:v1, 'yyyy/mm/dd') < sysdate;
RESULT
----------
1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14440 次 |
| 最近记录: |