以后给自己定一个规矩:以后写perl的脚本把配置的一些变量都写到一个配置文件里面:site_config.pl里面,然后在主程序perl脚本里面加上require 'site_config.pl';就可以了,类似于下面的格局:

公用的程序就放到common文件夹下,主程序放在progs下。

例如我这次perl连接oracle的脚本程序:

site_config的内容如下:

package config;$aRoot              = 'C:\cls\cn';   #程序所在根目录$oRoot              = 'E:\clsout\cn';#程序一些文件输出的根目录$ip                         = localhost;$orcl_sid_uat               = 'orcl';$orcl_user_uat              = 'scott';$orcl_pass_uat              = 'oracle';$debit_sid_uat_test             = 'debituat_test';$debit_user_uat_test                = 'debit';$debit_pass_uat_test                = 'acs_debit';

主程序内容如下:

#---------------------------------------------------------------#       Project Name:#           >>perl连接oracle实验##       Program Description:#           >>This job is scheduled via Windows scheduler to run#             on demand to loading interfaces generated by 测试 System##       Usage: perl_oracle.pl##       Note:#           >>  We loading following CLS tables:#               contacted_customer #              #       Author:LLL#       e-Mail:LLL@163.com##---------------------------------------------------------------require 'site_config.pl';#!/usr/bin/perl #perl script used to connect to Oracle use strict; use DBI; #创建连接my $dbh=DBI->connect("dbi:Oracle:host=$ip;sid=$orcl_sid_orcl", $orcl_user_uat, $orcl_pass_uat) or die "Cannot conenct oracle11g: $DBI::errstr\n"; #声明变量my $deptno = 99; my $dname = "denver"; my $loc = "test";#插入数据my $sql = qq{INSERT INTO dept VALUES(?,?,?)}; my $sth = $dbh->prepare($sql); $sth->execute($deptno, $dname,$loc); #删除数据 my $sql = qq{DELETE FROM dept WHERE loc='$loc'}; my $sth = $dbh->prepare($sql); #$sth->execute(); print "--I have deleted the record!\n"; #查询数据my $sql = qq{SELECT deptno, dname, loc FROM dept}; my $sth = $dbh->prepare($sql); $sth->execute();   #my ($pid, $pname); #declare columns $sth->bind_columns(undef, \$deptno, \$dname, \$loc); print "The results are:\n\n"; while ( $sth->fetch() ) { #fetch rows from DataBase         print "ID:$deptno, --- NAME:$dname, --- LOC:$loc\n"; } $sth->finish();#修改数据my $loc = "newddd";my $sql = qq{update dept set loc='$loc' where deptno=$deptno}; my $sth = $dbh->prepare($sql); $sth->execute();  #断开连接$dbh->disconnect or warn "DB disconnect failed: $DBI::errstr\n"; print "Disconnected from Oracle databae!\n";
最后进入程序所在目录运行这个脚本就可以了。

$dbh=DBI->connect('DBI:mysql:sample_db','root','quigley1') or die "Can't connect";$dbh=DBI->connect('DBI:mysql:database=sample_db;user=root;password=quigley1');