sql - plsql 存储过程,输入参数 date_of_birth 为 'DD-MM-YYYY' 格式的 varchar
问题描述
create or replace procedure pr1(i in varchar,o out sys_refcursor)
as begin
open o for
select sid,sname
from students
where dob=i;
end;
/
variable x refcursor
exec pr1(i=>dob,o=>:x) 实际上我不知道如何在参数表中给出日期输入????在学生表中显示详细信息???
解决方案
实际的 DOB 参数将是根据给定格式模型格式化的字符串。该模型(即它的字符串表示形式)在查询中用于在输入字符串和日期类型的 db 列之间正确转换(后者当然是猜测)。
您的代码(以及下面的代码片段)不完整,但您知道这一点。
create or replace procedure pr1(i in varchar,o out sys_refcursor)
as begin
open o for
select sid,sname
from students
where dob=TO_DATE(i, 'DD-MM-YYYY')
;
end;
/
variable x refcursor
exec pr1(i => '24-12-1999', o => :x)
推荐阅读
- javascript - 将事件(例如模糊)添加到多个元素(现在和未来)
- r - 在 dplyr 函数中将列名添加到 vars()
- caddy - 如何使用 Caddy 同时提供 http 和 https?
- google-compute-engine - 如何在 Google Compute 中取消 Sendgrid?
- talend - 如何使用 Talend tRESTClient 组件通过 POST 方法发送 xml 请求
- php - PHP登录只接受静态密码
- php - Laravel - 查询过去 7 天的计数值
- windows - 在某些 Windows 安装上生成的缩略图被关联程序的图标否决
- python - 如何从 Web 访问我的 Gunicorn 提供的 Flask 应用程序?
- javascript - 使用 jQuery 设置活动菜单项当前 URL