学习perl使用DBI模块连接数据库

发布时间:2020-02-27编辑:脚本学堂
Perl有一个很酷的模块Perl数据库接口(Perl Database Interface,简称DBI)。

    Perl有一个很酷的模块Perl数据库接口(Perl Database Interface,简称DBI)。
通过提供一系列在内部上能够转化成原始调用函数的功能,DBI模块为很多不同的数据库提供了一个统一的接口。由此,使用Perl就可以很容易地利用数据库和建立动态Web网页。

    本文为大家介绍如何实现Perl与mysql相互通讯的操作,介绍由DBI提供的重要方法,在开发过程中讲述到一个简单的脚本模板。这一操作的前提是假设你的系统已经安装了MySQL和Perl。

下载和安装
开始,下载并安装Perl DBI模块和MySQL DBD。通过在Perl 命令行中运行以下命令即可完成安装过程:
 

复制代码 代码如下:
perl> perl -MCPAN -e "install DBI"
perl> perl -MCPAN -e "install DBD::mysql"

注意:你可以手动下载和安装DBI和MySQL DBD
1.建立数据库,并赋予权限。
 

复制代码 代码如下:
mysql> create database pk;
mysql> use pk;
mysql> create table `pk`.`fei` (`id` tinyint(3) not null auto_increment primary key comment 'aa',`name` varchar(20) character set utf8 not null comment 'bb');
mysql> insert into `pk`.`fei` (`id`,`name`) values (null,'test'),(null,'jb200.com');
mysql> grant all on *.* to root@localhost identified by '123456' with grant option;

2.创建perl dbi连接程序
 

复制代码 代码如下:
#!/usr/bin/perl -w
use DBI;
$dbh = DBI->connect('DBI:mysql:pk','root','123456',
    {
        RaiseError => 1,
        AutoCommit => 0
    }) || die "database connect't: $DBI::errstr";
#@available = DBI->available_drivers;
my $sql = " select `id`,`name` from `fei`";
#my $return = $dbh->do($sql);
my $sth = $dbh->prepare($sql);
$sth->execute;
while (my @result = $sth->fetchrow_array){
    #print $result[1];
     print "@resultn"
    }
    $dbh->disconnect();

执行结果:
perl]# perl dbi.pl
1 test
2 jb200.com