📄 213.html
字号:
<STYLE type=text/css>
<!--
body,td { font-size:9pt;}
hr { color: #000000; height: 1px}
-->
</STYLE>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<HTML>
<HEAD><TITLE>精选文章 >> Oracle 专栏 >> 如何在Windosws 2000中安装perl并访问Oracle?</title>
</head>
<body >
<p><IMG SRC="../image/jsp001_middle_logo.gif" WIDTH="180" HEIGHT="60" BORDER=0 ALT=""></p>
<table width=100% bgcolor="#cccccc" align=center cellpadding="2" cellspacing="0" border=1 bordercolorlight="#000000" bordercolordark="#FFFFFF">
<tr bgcolor="#EFF8FF"><td>
<a href=../list_thread.php?int_attribute=2>精选文章</a>
>> <a href=../list_thread.php?forumid=20&int_attribute=2>Oracle 专栏</a>
>> 如何在Windosws 2000中安装perl并访问Oracle? [<a href=../forum/showthread.php?goto=newpost&threadid=213>查看别人的评论</a>]<br>
<hr><p>由 webmaster 发布于: 2001-02-03 13:31</p><p><img src="images/icons/icon6.gif" alt="Cool" border=0> </p><p>系统环境:
<br>1、操作系统:Windows 2000 Server
<br>2、数据库: Oracle 8i R2 (8.1.6) for NT 企业版
<br>3、安装路径:C:\ORACLE
<br>
<br>本例使用软件下载地址:
<br>ActivePerl-5.6.0.620-MSWin32-x86-multi-thread.msi[8.22MB]
<br><a href="http://activestate.com/download/ActivePerl/Windows/5.6/ActivePerl-5.6.0.620-MSWin32-x86-multi-thread.msi" target=_blank>http://activestate.com/download/ActivePerl/Windows/5.6/ActivePerl-5.6.0.620-MSWin32-x86-multi-thread.msi</a>
<br>
<br>安装方法:
<br>
<br>一、安装 Perl 解释器
<br>第一步,双击 ActivePerl-5.6.0.620-MSWin32-x86-multi-thread.msi 文件进行安装,使用缺省配置进行安装
<br> 安装目录选择c:\perl;
<br>
<br>第二步,修改注册表,运行 RegEdit
<br> 1、定位->HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC\Parameters\Script Map
<br> 2、新建字符串:名称:".pl" <——>数据:"c:\perl\bin\perl.exe %s %s"
<br> 3、新建字符串:名称:".cgi"<——>数据:"c:\perl\bin\perl.exe %s %s"
<br>
<br>第三步,设置 IIS 服务器
<br> 开始->设置->控制面板->管理工具->Internet 服务管理器->默认Web站点->
<br> 鼠标右键->属性->主目录->配置->添加->
<br> 可执行文件(X):“C:\Perl\bin\Perl.exe %s %s”->扩展名(E):“.pl”->
<br> 确定->确定->确定->
<br>
<br> 默认Web站点->鼠标右键->新建->虚拟目录->下一步->别名(perl)->
<br> 目录选择(c:\perl\)->添加读取、运行脚本、执行权限->下一步->完成->
<br>
<br>
<br>注:ActivePerl-5.6.0.620-MSWin32-x86-multi-thread.msi安装完,才能使用ppm命令
<br>
<br>注:Perl通过DBI/DBD客户接口提供对DB2、Oracle、Sybase、Informix、Mysql...等数据库的访问
<br>
<br>
<br>二、安装 Perl 连接数据库的模块,先安DBI,后安Oracle接口模块
<br>
<br>首先,拨号或通过专线连接到Internet上
<br>
<br>C:\>ppm
<br>PPM interactive shell (2.1.1) - type 'help' for available commands.
<br>PPM>
<br>PPM> install dbi
<br>Install package 'dbi?' (y/N): y
<br>Retrieving package 'dbi'...
<br>Installing C:\Perl\site\lib\auto\DBI\dbd_xsh.h
<br>Installing C:\Perl\site\lib\auto\DBI\DBI.bs
<br>Installing C:\Perl\site\lib\auto\DBI\DBI.dll
<br>Installing C:\Perl\site\lib\auto\DBI\DBI.exp
<br>Installing C:\Perl\site\lib\auto\DBI\DBI.lib
<br>Installing C:\Perl\site\lib\auto\DBI\dbipport.h
<br>Installing C:\Perl\site\lib\auto\DBI\DBIXS.h
<br>Installing C:\Perl\site\lib\auto\DBI\dbi_sql.h
<br>Installing C:\Perl\site\lib\auto\DBI\Driver.xst
<br>Installing C:\Perl\site\lib\DBI.pm
<br>Installing C:\Perl\site\lib\Win32\DBIODBC.pm
<br>Installing C:\Perl\site\lib\DBI\DBD.pm
<br>Installing C:\Perl\site\lib\DBI\FAQ.pm
<br>Installing C:\Perl\site\lib\DBI\Format.pm
<br>Installing C:\Perl\site\lib\DBI\ProxyServer.pm
<br>Installing C:\Perl\site\lib\DBI\Shell.pm
<br>Installing C:\Perl\site\lib\DBI\W32ODBC.pm
<br>Installing C:\Perl\site\lib\DBD\ADO.pm
<br>Installing C:\Perl\site\lib\DBD\ExampleP.pm
<br>Installing C:\Perl\site\lib\DBD\Multiplex.pm
<br>Installing C:\Perl\site\lib\DBD\NullP.pm
<br>Installing C:\Perl\site\lib\DBD\Proxy.pm
<br>Installing C:\Perl\site\lib\DBD\Sponge.pm
<br>Installing C:\Perl\site\lib\Bundle\DBI.pm
<br>Installing C:\Perl\bin\dbiproxy
<br>Installing C:\Perl\bin\dbiproxy.bat
<br>Installing C:\Perl\bin\dbish
<br>Installing C:\Perl\bin\dbish.bat
<br>Writing C:\Perl\site\lib\auto\DBI\.packlist
<br>PPM>
<br>PPM> install dbd-oracle
<br>Install package 'dbd-oracle?' (y/N): y
<br>Retrieving package 'dbd-oracle'...
<br>Installing C:\Perl\site\lib\auto\DBD\Oracle\Oracle.bs
<br>Installing C:\Perl\site\lib\auto\DBD\Oracle\Oracle.dll
<br>Installing C:\Perl\site\lib\auto\DBD\Oracle\Oracle.exp
<br>Installing C:\Perl\site\lib\auto\DBD\Oracle\Oracle.lib
<br>Installing C:\Perl\site\lib\oraperl.ph
<br>Installing C:\Perl\site\lib\Oraperl.pm
<br>Installing C:\Perl\site\lib\DBD\Oracle.pm
<br>Installing C:\Perl\bin\ora_explain
<br>Installing C:\Perl\bin\ora_explain.bat
<br>Writing C:\Perl\site\lib\auto\DBD\Oracle\.packlist
<br>PPM>
<br>PPM> install dbd-oracle8
<br>Install package 'dbd-oracle8?' (y/N): y
<br>Retrieving package 'dbd-oracle8'...
<br>Installing C:\Perl\site\lib\auto\DBD\Oracle\Oracle.dll
<br>Installing C:\Perl\site\lib\auto\DBD\Oracle\Oracle.exp
<br>Installing C:\Perl\site\lib\auto\DBD\Oracle\Oracle.lib
<br>Installing C:\Perl\site\lib\oraperl.ph
<br>Installing C:\Perl\site\lib\Oraperl.pm
<br>Installing C:\Perl\site\lib\DBD\Oracle.pm
<br>Writing C:\Perl\site\lib\auto\DBD\Oracle8\.packlist
<br>PPM>
<br>PPM> exit
<br>Quit!
<br>
<br>C:\>
<br>
<br>如果在家中不能上网,可以到Activestate下载各种模块,
<br>
<br>网址是:http://www.activestate.com/PPMPackages/
<br>
<br>PPM命令的解释
<br>E:\>ppm
<br>PPM interactive shell (2.1.1) - type 'help' for available commands.
<br>PPM> help
<br>Commands:
<br> exit - leave the program.
<br> help [command] - prints this screen, or help on 'command'.
<br> install PACKAGES - installs specified PACKAGES.
<br> quit - leave the program.
<br> query [options] - query information about installed packages.
<br> remove PACKAGES - removes the specified PACKAGES from the system.
<br> search [options] - search information about available packages.
<br> set [options] - set/display current options.
<br> verify [options] - verifies current install is up to date.
<br> version - displays PPM version number
<br>
<br>exit --退出PPM程序
<br>help --显示PPM帮助
<br>install PACKAGES --安装模块,PACKAGES为模块名
<br>quit --同exit,退出PPM程序
<br>query [options] --查询当前已安装模块,不加参数:查询所有已安装模块
<br>remove PACKAGES --卸载已安装模块
<br>search [options] --查询可供安装的模块,在ActivePerl的站点上
<br>set [options] --
<br>verify [options] --
<br>version --显示PPM版本号
<br>
<br>
<br>三、第一个Perl例子
<br>给这个程序取名为test.pl,放到c:\perl\目录下
<br>浏览器中输入http://oradb/perl/test.pl
<br>
<br>#-------------------------------------
<br>#!/perl/bin/perl
<br> print "Content-type:text/html\n\n";
<br> print "hellp Perl!";
<br>exit;
<br>#-------------------------------------
<br>
<br>
<br>四、写第一个连接Oracle的Perl程序test.pl
<br>
<br>1、连入SQL*Plus
<br>以system/manager用户登录,
<br>SQL> conn system/manager
<br>
<br>创建新的用户:如user1/pass1,赋予connect,resource权限。
<br>SQL> grant connect,resource to user1 identified by pass1;
<br>
<br>SQL> conn user1/pass1
<br>SQL> create table test(a varchar2(20),b date);
<br>SQL> insert into test values('原有值',sysdate);
<br>SQL> insert into test values('原有值',sysdate);
<br>SQL> insert into test values('原有值',sysdate);
<br>SQL> commit;
<br>
<br>SQL> select a,to_char(b,'yyyy-mm-dd hh24:mi:ss') 日期 from test;
<br>
<br>A 日期
<br>-------------------- -------------------
<br>原有值 2000-11-26 00:04:47
<br>原有值 2000-11-26 00:04:47
<br>原有值 2000-11-26 00:04:48
<br>
<br>2、在c:\perl下创建test.pl,用notebook编辑,输入以下代码
<br>#-------------------------------------
<br>#!/perl/bin/perl
<br>print "Content-type:text/html\n\n";
<br>
<br>#引用格式:“use 模块名”
<br>use DBI;
<br>
<br>my $dbh = DBI->connect("dbi:Oracle:oradb", 'user1','pass1');
<br>my $sql = qq{ insert into test values('网页生成值',sysdate)};
<br>my $sth = $dbh->prepare( $sql );
<br>$sth->execute();
<br>$dbh->disconnect();
<br>
<br>print "新记录已生成,请用SQL*Plus重新查询!";
<br>exit;
<br>#-------------------------------------
<br>
<br>注:dbi:Oracle:oradb中的oradb是Oracle数据库的实例名,使用时,请更换成你自己的实例名
<br>
<br>
<br>3、打开一个浏览器窗口,输入以下地址来查看运行结果
<br><a href="http://oradb/perl/test.pl" target=_blank>http://oradb/perl/test.pl</a>
<br>
<br>注:oradb为本机计算机名
<br>
<br>
<br>4、进入SQL*Plus,重新查询测试表test,查看新记录是否生成成功
<br>
<br>SQL> conn user1/pass1
<br>SQL> select a,to_char(b,'yyyy-mm-dd hh24:mi:ss') 日期 from test;
<br>
<br>A 日期
<br>-------------------- -------------------
<br>原有值 2000-11-26 00:04:47
<br>原有值 2000-11-26 00:04:47
<br>原有值 2000-11-26 00:04:48
<br>网页生成值 2000-11-26 00:15:45
<br>网页生成值 2000-11-26 00:15:58
<br>网页生成值 2000-11-26 00:16:15
<br>网页生成值 2000-11-26 00:16:28
<br>
<br>经验证,新记录生成成功。
<br>
<br></p></td>
</tr>
</table>
<p>
<CENTER><a href="../forum/newreply.php?action=newreply&threadid=213">点这里对该文章发表评论</a></CENTER>
<p>该文章总得分是 <font color=red>0</font> 分,你认为它对你有帮助吗?
[<a href=javascript:void(0) onclick=window.open("../forum/codeVote.php?threadid=213&intVote=4","","menubar=no,toolbar=no,location=no,directories=no,status=no,resizable=no,scrollbars=no,width=70,height=40,top=0,left=0")>非常多</a>](<font color=red>0</font>)
[<a href=javascript:void(0) onclick=window.open("../forum/codeVote.php?threadid=213&intVote=2","","menubar=no,toolbar=no,location=no,directories=no,status=no,resizable=no,scrollbars=no,width=70,height=40,top=0,left=0")>有一些</a>](<font color=red>0</font>)
[<a href=javascript:void(0) onclick=window.open("../forum/codeVote.php?threadid=213&intVote=1","","menubar=no,toolbar=no,location=no,directories=no,status=no,resizable=no,scrollbars=no,width=70,height=40,top=0,left=0")>无帮助</a>](<font color=red>0</font>)
[<a href=javascript:void(0) onclick=window.open("../forum/codeVote.php?threadid=213&intVote=-1","","menubar=no,toolbar=no,location=no,directories=no,status=no,resizable=no,scrollbars=no,width=70,height=40,top=0,left=0")>是灌水</a>](<font color=red>0</font>) </p>
<script language="javascript" src="../include/read_thread_script.php?threadid=213"></script>
<p><CENTER>
Copyright © 2001 - 2009 JSP001.com . All Rights Reserved <P>
<IMG SRC="../image/jsp001_small_logo.gif" WIDTH="85" HEIGHT="30" BORDER=0 ALT="">
</CENTER></p>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -