如何使用Ruby脚本调用Oracle存储过程

日期: 2008-06-17 作者:Alizze 来源:TechTarget中国

  使用Ruby脚本调用Oracle存储过程的示例:


  1.首先创建Oracle存储过程test:


  SQL> create OR REPLACE PROCEDURE test(p1 in varchar2,p2 out varchar2 ) is


  2 BEGIN


  3 select p1  ’ PROCEDURE &#101xecuteD!’ into p2 from dual ;


  4 end;


  5 /


  Procedure created


  2.再写Ruby脚本,调用存储过程test,脚本内容如下,将脚本保存为:Call_proc_test.rb:


  require ’dbi’


  db_read_str = ’BEGIN test(?, ?); END;’


  dbh = DBI.connect(’DBI:OCI8:TNSDBNAME’, ’username’, ’password’)


  sth_db = dbh.prepare(db_read_str)


  sth_db.bind_param(1, ’test:’,’’*50) # allow for up to 50 chars


  sth_db.bind_param(2, ’ ’ * 100) # allow for up to 100 chars


  sth_db.&#101xecute


  str = sth_db.func(:bind_value, 2)


  puts str


  dbh.disconnect


  3.检查Ruby语法错误:


  C:>ruby -cw Call_proc_test.rb


  Syntax OK


  C:>


  4.最后执行Ruby脚本:


  C:>ruby Call_proc_test.rb


  test: PROCEDURE &#101xecuteD!


  C:>


  注释:如果是Windows环境下,大家也可以通过双击Call_proc_test.rb 文件来运行Ruby脚本。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

作者

Alizze
Alizze

相关推荐