<!--start story AD-->
|
<!--start banner ad--><script language="JavaScript1.1" src="http://ad.cn.doubleclick.net/adj/messagingplus.zdnet.com.cn/developer/database;sz=1x1;ord=1290776558?" type="text/javascript"> </script> <noscript></noscript>
|
<!--end story AD-->Perl中一个最酷的模块就是Perl数据库接口(Perl Database Interface,简称DBI)。通过提供一系列在内部上能够转化成原始调用函数的功能,DBI模块为很多不同的数据库提供了一个统一的接口。由此,使用Perl就可以很容易地利用数据库和建立动态Web网页。
当前,MySQL是广泛用于Web网站开发的数据库,它是一种免费、开源的SQL操作。本期我们将讲述到如何实现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。
现在Perl DBI和MySQL DBD应该安装在你的系统中。
然后,通过在MySQL用户端命令行输入以下命令,以建立一个用于SQL查询的表格。
mysql> CREATE TABLE users (id INT(4) PRIMARY KEY, username VARCHAR(25), country VARCHAR(2)); Query OK, 0 rows affected (0.11 sec)
mysql> INSERT INTO users VALUES (1, 'john', 'IN'), (2, 'tom', 'US'), (3, 'layla', 'US'); Query OK, 3 rows affected (0.11 sec) Records: 3 Duplicates: 0 Warnings: 0
一旦建立表格,继续使用DBI方法建立一个脚本模板(见表A)。
表A
#!/bin/perl
# load module use DBI;
# connect my $dbh = DBI->connect("DBI:mysql:database=db2;host=localhost", "joe", "guessme", {'RaiseError' => 1});
# execute INSERT query my $rows = $dbh->do("INSERT INTO users (id, username, country) VALUES (4, 'jay', 'CZ')"); print "$rows row(s) affected ";
# execute SELECT query my $sth = $dbh->prepare("SELECT username, country FROM users"); $sth->execute();
# iterate through resultset # print values while(my $ref = $sth->fetchrow_hashref()) { print "User: $ref-> "; print "Country: $ref-> "; print "---------- "; }
# clean up
$dbh->finish(); //添加这个释放结果集,否则disconnect时会报错 $dbh->disconnect();
四个步骤
当使用Perl DBI执行一个SQL 查询时,请遵循四个简单的步骤:
- 开始时,通过调用connect() 方法初始化数据库的句柄。connect() 方法接收连接参数并作为字符串,包括数据库类型("mysql"),主机名称("localhost"),以及数据库名称("db2")。数据库名称("joe")和密码("guessme")作为第二和第三个变量提供给connect() 方法。
- 建立SQL查询字符串,并使用do()或prepare()以及execute()方法执行查询语句。do()方法是针对于一次性使用的INSERT,UPDATE或者DELETE查询,但prepare()和execute()方法针对的是SELECT查询。使用这些方法得到的对象将有所不同,这取决于查询的类型,查询结果是否成功也是如此。成功的SELECT查询将返回一个结果对象,成功的INSERT/UPDATE/DELETE 查询将返回一些相关的行。而不成功的查询将返回一个错误。
- 对于SELECT查询,结果对象将被进一步处理以提取数据。使用一个循环,fetchrow_hashref()方法将返回每一记录作为Perl的信号。
- 通过调用disconnect()方法结束会话。
当你下回继续在Perl中编写MySQL数据库连接代码时,这一脚本模块将可为你节省时间。编程快乐!
|
相关推荐
通过使用DBI,用Perl可以很容易的连接到mysql数据库: 代码如下: 复制代码 代码如下:#!/bin/perl use DBI; # Connect to target DB my $dbh = DBI->connect(“DBI:mysql:database=eygle;host=localhost”,”...
有时候需要perl操作mysql数据库,可以通过DBI实现,需要的朋友可以参考下
使用perl连接mysql,这个网上有很多案例了,一般大家都是DBI下的DBD::MySQL这个模块进行.这里做一个mask弄一个TIPS: Perl DBI MySQL的字符集为UTF8 Perl DBI 特殊字符写入时报错 Perl DBI 连接自动重连或是...
perl的DBI使用手册,详细描述了如何连接数据库,如何使用dbi模块,对于使用perl语言进行运维,开发的小伙伴希望带来帮助
DBD-mysql:Perl5数据库接口(DBI)MySQL驱动程序
单兴华CTO-学习Mysql经典教程-第07章Perl DBI API.pdf 单兴华CTO-学习Mysql经典教程-第08章PHP API.pdf 单兴华CTO-学习Mysql经典教程-第09章MySQL 管理介绍.pdf 单兴华CTO-学习Mysql经典教程-第10章MySQL 数据目录....
单兴华CTO-学习Mysql经典教程-第07章Perl DBI API.pdf 单兴华CTO-学习Mysql经典教程-第08章PHP API.pdf 单兴华CTO-学习Mysql经典教程-第09章MySQL 管理介绍.pdf 单兴华CTO-学习Mysql经典教程-第10章MySQL 数据目录....
许多WEB应用程序内部通常重复运行带不同自变量的相同数据库查询,或以全有或全无块的形式 执行一组相关查询。...本文讨论了支持MySQL事务和预编译查询的Perl DBI函数,并对其工作原理和应用方法进行说明。
Perl 5 中我们可以使用 DBI 模块来连接数据库。 DBI 英文全称:Database Independent Interface,中文称为数据库独立接口。 DBI 作为 Perl 语言中和数据库进行通讯的标准接口,它定义了一系列的方法,变量和常量,...
********Shenkxiao ...注:>在安装mysql数据库的时候经常出现DBI is needed by ……,需要根据实际版本进行选择rpm的版本。 >此包在系统盘或者系统镜像中Server目录下有。 ***********************************
它具有功能强、使用简便、管理方便、运行速度快、安全可靠性强等优点,用户可利用许多语言编写访问MySQL 数据库的程序,另外,MySQL在UNIX等操作系统上是免费的,在Windows操作系统上,可免费使用其客户机程序和客户...
它具有功能强、使用简便、管理方便、运行速度快、安全可靠性强等优点,用户可利用许多语言编写访问MySQL 数据库的程序, 另外,MySQL在UNIX等操作系统上是免费的,在Windows操作系统上,可免费使用其客户机程序和...
MySQL数据库是Linux操作系统上用得最多的数据库系统,它可以非常方便的与其它服务器集成在一起,如Apache、Vsftpd、Postfix等。下面介绍RHEL 6平台MySQL数据库服务器的安装方法。 1、安装完整的MySQL数据库需要...
单兴华CTO-学习Mysql经典教程-第07章Perl DBI API.pdf 单兴华CTO-学习Mysql经典教程-第08章PHP API.pdf 单兴华CTO-学习Mysql经典教程-第09章MySQL 管理介绍.pdf 单兴华CTO-学习Mysql经典教程-第10章MySQL 数据目录....
单兴华CTO-学习Mysql经典教程-第07章Perl DBI API.pdf 单兴华CTO-学习Mysql经典教程-第08章PHP API.pdf 单兴华CTO-学习Mysql经典教程-第09章MySQL 管理介绍.pdf 单兴华CTO-学习Mysql经典教程-第10章MySQL 数据目录....
单兴华CTO-学习Mysql经典教程-第07章Perl DBI API.pdf 单兴华CTO-学习Mysql经典教程-第08章PHP API.pdf 单兴华CTO-学习Mysql经典教程-第09章MySQL 管理介绍.pdf 单兴华CTO-学习Mysql经典教程-第10章MySQL 数据目录....
pthreads 注意事项 4.10 Perl 安装说明 4.10.1 在Unix操作系统上安装 Perl 4.10.2 在 Win32上安装 ActiveState Perl 4.10.3 在 Win32 上安装 MySQL Perl 分发 4.10.4 使用 Perl DBI/DBD接口...
pthreads 注意事项 4.10 Perl 安装说明 4.10.1 在Unix操作系统上安装 Perl 4.10.2 在 Win32上安装 ActiveState Perl 4.10.3 在 Win32 上安装 MySQL Perl 分发 4.10.4 使用 Perl DBI/DBD接口遇到...