新人求教,如何写存储过程???

班门弄斧 2011-12-06 11:03:52
头次遇到项目中需要我来写存储过程,正所谓有需求才会有学习。

各位前辈,还能指点一二,比如:
有这么一个需求:合同表cnt_normal中有一个开始日期curr_begin_date,通过存储过程判断开始日期与当前时间,然后更新表中一个字段available
...全文
112 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
班门弄斧 2011-12-07
  • 打赏
  • 举报
回复
非常荣幸,能有版内的专家坐镇解答,小弟不才,还能给个介绍存储过程的下载地址
我心飞翔 2011-12-06
  • 打赏
  • 举报
回复
去Oracle官方网站下载关于PL/SQL的帮助文档吧,最权威,最全面了。
zujinsheng 2011-12-06
  • 打赏
  • 举报
回复
文档..百度有..
班门弄斧 2011-12-06
  • 打赏
  • 举报
回复
哪儿有详细的文档之类的,毕竟还是得靠自己,靠自己多联系多写才行
班门弄斧 2011-12-06
  • 打赏
  • 举报
回复
非常感谢楼上2位的支持
programmerxiaocai 2011-12-06
  • 打赏
  • 举报
回复

CREATE OR REPLACE PROCEDURE PRO_TEST is
now_date nvarchar2(20);
M_SQL VARCHAR2(2000);
begin
now_date := to_char(sysdate, 'yyyy-mm-dd');
M_SQL := 'update cnt_normal t set t.available =' || '''' || '123' || '''' ||
' where to_char(t.start_date_time,' || '''' || 'yyyy-mm-dd' || '''' ||
')= ' || '''' || now_date || '''' || '';
EXECUTE IMMEDIATE M_SQL;
COMMIT;
end PRO_TEST;
opps_zhou 2011-12-06
  • 打赏
  • 举报
回复

create or replace procedure prc_update_normal --声明一个存储过程
as
--在此区间声明各个变量
begin
--在此区间做业务逻辑处理
update cnt_normal set available = case when curr_begin_date < sysdate then '可用' else '不可用' end;
commit;
exception
--在此区间处理异常
when others then
dbms_output.put_line(sqlerrm);
end prc_update_normal;


17,075

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧