perl连接oracle数据库,Perl连接oracle数据库

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

9228c902351080515f12ef184266c0b7.png

公用的程序就放到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');

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值