`

使用perl连接mysql数据库

阅读更多

用Perl DBI连接MySQL数据库

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"

现在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->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()方法结束会话。

分享到:
评论

相关推荐

    通过dbi使用perl连接mysql数据库的方法

    以下是一个简单的示例,展示了如何使用DBI来连接MySQL数据库、执行SQL语句以及断开连接: ```perl #!/bin/perl use DBI; # 连接到目标数据库 my $dbh = DBI->connect("DBI:mysql:database=<数据库名>;host=<主机名...

    perl 连接数据库所需包

    例如,DBD::mysql是用于连接MySQL数据库的DBD驱动,DBD::Oracle用于Oracle数据库,DBD::SQLite用于SQLite数据库。在本案例中,"dbd unixodbc"提到了ODBC(Open Database Connectivity),这是另一种数据库连接标准,...

    [WAMP网站开发] PHP连接MySQL数据库基础知识1

    在 PHP 中连接 MySQL 数据库需要使用 MySQL extension,首先需要安装 MySQL extension,然后使用 PHP 的 mysql_XXX() 函数来连接数据库。例如: ```php $conn = mysql_connect("localhost", "username", ...

    linux下perl操作mysql数据库(需要安装DBI)

    以下是一个简单的Perl脚本示例,演示如何连接到MySQL数据库并执行查询: ```perl #!/usr/bin/perl use DBI; # 定义数据库连接参数 my $driver = "DBI:mysql"; my $database = "perl_test"; my $username = "root";...

    与MySQL数据库亲密接触——玩转MySQL数据库表.pdf

    然后,可以使用 MySQL 命令行工具来连接 MySQL 数据库,并执行各种数据库操作。 创建数据库和表 在 MySQL 数据库中,可以使用 CREATE DATABASE 命令来创建新的数据库,例如创建一个名为 test 的数据库。然后,可以...

    perl连接mysql安装方法.docx

    在Perl编程中,连接MySQL数据库通常需要两个关键模块:DBI(Database Interface)和DBD(Database Driver for),其中DBI是Perl与各种数据库交互的标准接口,而DBD是具体的数据库驱动,例如DBD::mysql用于连接MySQL...

    如何Perl使用Access数据库

    此外,如果你需要与MySQL数据库进行交互,同样可以通过PPM安装DBD::MySQL模块,方法类似: ```perl c:>ppm PPM interactive shell (2.1.5) - type 'help' for available commands. ppm>install DBI ppm>install DBD...

    MySQL数据库详细介绍pdf(22)

    ODBC(Open Database Connectivity)支持是Windows平台上连接MySQL数据库的一个常见方式。通过安装MySQL驱动程序MyODBC,任何支持ODBC的程序都可以访问MySQL数据库。在设置好ODBC数据源后,用户可以从Microsoft ...

    Perl+MySql易影中国电影程序

    总结,Perl+MySQL易影中国电影程序是一个使用Perl语言和MySQL数据库实现的电影网站系统,它包含了用户界面和后台管理功能,允许用户浏览电影信息以及管理员进行内容维护。了解Perl CGI和MySQL的基本原理及操作是运行...

    Linux下的MySQL依赖包(所有perl).rar

    在Linux环境中,MySQL数据库系统是广泛使用的开源关系型数据库管理系统,尤其在服务器端应用中扮演着重要角色。为了确保MySQL在Linux上能够顺利运行,它依赖于一系列的库和工具,其中Perl语言的某些模块是MySQL安装...

    Perl实现文件及数据库访问

    使用DBI,首先需要加载适当的数据库驱动(如DBD::mysql),然后创建数据库句柄,建立连接,执行SQL查询,并处理结果集。例如: ```perl use DBI; my $dbh = DBI->connect("dbi:mysql:database=test;host=localhost...

    MySQL数据库设计.pdf

    从给定的文件信息中,我们可以提取并深入探讨多个关于MySQL数据库设计的重要知识点,包括数据库的基本概念、MySQL数据类型、MySQL运算符、SQL语句、数据库设计步骤以及如何使用PHP脚本来操作MySQL服务器。...

    [绝对原创]Linux图解教程:使用rpm安装MySQL数据库服务器.docx

    ### 使用RPM在Linux上安装MySQL数据库服务器 #### 一、引言 在Linux环境下部署MySQL数据库服务器是一项常见的任务,特别是在构建服务器环境时。本文将详细介绍如何通过RPM包管理系统来安装MySQL数据库服务器及其...

    MYSQL数据库主从复制高可用技术改造环境部署方案

    ### MySQL数据库主从复制高可用技术改造环境部署方案 #### 安装部署DRBD DRBD(Distributed Replicated Block Device)是一种分布式复制块设备,主要用于实现数据在两台或多台服务器之间的实时同步,以此来构建高...

    mysql数据库备份策略

    为了使用`mysqlhotcopy`,首先需要安装DBD-mysql Perl模块以支持该脚本与MySQL数据库的连接。然后可以通过设置Crontab任务来定期执行备份脚本,例如每天凌晨3点自动备份数据库。 ##### 3. 使用`mysqldump`备份...

    Python Mysql数据库操作 Perl操作Mysql数据库

    本文将详细探讨如何使用Python和Perl来操作MySQL数据库。 首先,我们来看Python对MySQL数据库的操作。在Python中,我们可以使用`MySQLdb`库来连接和操作MySQL。以下是一个简单的示例: ```python # 导入MySQLdb库 ...

    perl-mysql.rar

    这个压缩文件可能包含了诸如 DBD::mysql(Perl 数据库驱动,用于连接 MySQL)、DBI(Perl 的数据库接口模块)等必要的组件,它们是 Perl 连接和操作 MySQL 数据库所必需的。 安装 MySQL 时,如果缺少这些 Perl 模块...

    使用开源工具mysqlreport监控Mysql数据库-简易使用方法分享.pdf

    它能提供关于查询性能、连接状态、内存使用等关键信息,帮助识别潜在的性能瓶颈,并及时进行调整和优化。不过,对于需要图形界面或者实时监控的场景,可能需要考虑其他更专业的工具,如 Spotlight on MySQL 和 MySQL...

    linux-mysql-驱动

    在本例中,"linux-mysql-驱动"可能是指Linux环境下用于连接MySQL数据库的特定驱动程序或接口。 DBD-mysql-4.020是Perl的Database Driver for MySQL的一个版本,属于DBI(Database Interface)的一部分。DBI是Perl...

Global site tag (gtag.js) - Google Analytics