当前位置:数据库 > MySQL >>

Perl语言存取MSQL和MySQL数据库内容

答案:1) 知识准备:

  为了使用Perl语言去存取mSQL和MySQL数据库的内容,必须安装一些API模块,以下列出一些必须安装的模块名称说明和其下载网址:

  i) 常规安装必须的模块:

  DBI-1.13

  Perl语言的数据库通用接口

  Data-ShowTable-3.3

  Perl5的一个模块,定义了一系列的子例程,用来将数据输出显示为美观的四种格式:简单表格、盒包装表格、列表样式和HTML格式。

  Msql-Mysql-modules-1.2209

  包含了两个数据库驱动:DBD::mSQL和DBD::mysql,也就是mSQL和MySQL对Perl语言数据库通用接口的驱动程序,具体地说是实现对mSQL和MySQL数据库存取的DBD(数据库驱动程序)

  target="_blank">http://www.mysql.com/downloads/api-dbi.html

  ii) 为了在使用Perl语言的数据库通用接口的时候可以使用Perl语言的数据库通用接口自带的

  DBD::Proxy驱动和DBD::ProxyServer模块,必须要安装以下的模块:

  Net-Daemon-0.31

  是一个为轻松实现便携式服务器应用程序而提供的一个抽象的基本子类,它提供了实现一个后台守护程序(Daemon)通常任务的方法:启动、登录、连接客户端、认证、为安全设置环境变量和进入工作状态。

  Storable-0.6.11

  使得数据存储更加连续和稳定。你可以用递归的办法向磁盘存储任何的数据结构,同时也可以从存储文件中取出数据并且在内存中重建同样的结构。

  PlRPC-0.2012

  RPC::PlServer--为实现PlRPC而提供的Perl语言扩展。它是一个用于服务器端的包,它和RPC::client一起通过共享包RPC::Comm的方式来通讯。PlRPC通过定义一系列可以被客户端执行的方法(methods)来用Perl语言实现RPC(远程过程调用) 。

  target="_blank">http://www.perl.com/CPAN-local/modules/

  为了使用Perl语言去存取mSQL和MySQL数据库的内容,必须安装一些API模块,以下列出一些 必须安装的模块名称说明和其下载网址:

  i) 常规安装必须的模块:

  DBI-1.13 Perl语言的数据库通用接口

  Data-ShowTable-3.3

  Perl5的一个模块,定义了一系列的子例程,用来 将数据输出显示为美观的四种格式:

  简单表格、盒包装表格、列表样式和HTML格式。

  Msql-Mysql-modules-1.2209 包含了两个数据库驱动:DBD::mSQL和 DBD::mysql,也就是mSQL和MySQL对Perl语

  言数据库通用接口的驱动程序,具体地说是实现

  对mSQL和MySQL数据库存取的DBD(数据库驱动程序)

  target="_blank">http://www.mysql.com/downloads/api-dbi.html

  ii) 为了在使用Perl语言的数据库通用接口的时候可以使用Perl语言的数据库通用接口自带的DBD::Proxy驱动和DBD::ProxyServer模块,必须要安装以下的模块:

  Net-Daemon-0.31 是一个为轻松实现便携式服务器应用程序而提供的一个抽象的基本子类,它提供了实现一个后台 守护程序(Daemon)通常任务的方法:启动、登录、

  连接客户端、认证、为安全设置环境变量和进入工作状态。

  Storable-0.6.11

  使得数据存储更加连续和稳定。你可以用递归的 办法向磁盘存储任何的数据结构,同时也可以从 存储文件中取出数据并且在内存中重建同样的结构。

  PlRPC-0.2012

  RPC::PlServer--为实现PlRPC而提供的Perl语言扩展。它是一个用于服务器端的包,它和RPC::client一起通过共享包RPC::Comm的方式

  来通讯。PlRPC通过定义一系列可以被客户端执

  行的方法(methods)

  来用Perl语言实现RPC(远程

  过程调用) 。

  target="_blank">http://www.perl.com/CPAN-local/modules/

  2) 安装过程:

  下载以上提及的模块安装文件(文件名均为模块名后接.tar.gz),最好保存在目录:/usr/local/src下,并解压:tar zxvf *****.tar.gz (*****表示模块名) 。这将产生各模块的安装文件目录。

  i)

  按照以下列出的从左到右的先后顺序安装,使得系统支持使用DBD::Proxy驱动和DBD::ProxyServer模块。

  Net-Daemon-0.31--------Storable-0.6.11------------PlRPC-0.2012使用标准的CPAN模块安装过程:perl Makefile.PL----make-----make test----make

  install

  ii) 常规安装部份:

  按照以下列出的从左到右的先后顺序安装:

  DBI-1.13----Data-ShowTable-3.3----Msql-Mysql-modules-1.2209

  对DBI-1.13模块和Msql-Mysql-modules-1.2209模块的安装使用标准的CPAN模块安装过程:

  perl Makefile.PL----make-----make test----make install

  对Data-ShowTable-3.3模块的安装要特殊处理一下:

  a) 此模块带的测试套件有错误,顾省略make test这一过程。即安装过程为:

  perl Makefile.PL----make----make install

  b) 在完成perl Makefile.PL这一步后,编辑ShowTable.pm文件,找到"=head1"相关段,增加一行:" =head1 SYNOPSIS " ,保存退出。接着完成make和make file过程。

  3) 测试:

  使用MySQL数据库(使用mSQL也可以)建立一个数据库:abacus,写一个简单的perl程序:perlmysql.cgi,

  从一个数据库abacus中读出所有的表名并且显示。

  #!/usr/bin/perl

  use DBI;

  print "Content-type: text/html\n\n";

  print "\n";

  print "\n";

  $driver="mysql";

  $dbh=DBI->connect("DBI:mysql:abacus:mysql.szabacus.com","root","abcde")||die "can

  not connect database";

  $sth=$dbh->prepare("show tables")||die "occur an error when query database";

  $sth->execute();

  $numRows=$sth->rows;

  while(@row=$sth->fetchrow_array)

  {

  print "Table: $row[0]\n";

  }

  print "query lines=$numRows\n";

  $sth->finish();

  $dbh->disconnect();

  exit;

  将此程序存入系统的CGI目录中,同时执行:chmod 755 perlmysql.cgi,然后在命令行下执行: perl perlmysql.cgi ,在正常安装的情况下将可以看到数据库abacus中的所有表名显示出来。 也可以在IE里使用url看结果。

  

上一个:MySQL中文参考手册--创造并使用一个数据库
下一个:Linux下Apache+PHP+MySql+Cgi

更多MySQL疑问解答:
如何将SQL 2005中的数据实时同步到MYSQL中
java对mysql数据库备份后,它的备份记录怎么显示查出来啊。 求告诉、
如何查询mysql表中的相似度。
mysql 查看表有没有被锁
mysql front 和mysql
mysql 建表 问题 求解答 为什么不能创建表
mysql查询问题
mysql中怎么让union all不打乱顺序
mysql中修改表字段
mysql用户操作表权限的问题(java)
mysql 如何在查询时防止插入
mysql中的 insert into select 问题,想在同个服务器下复制不同数据库的表的内容,在线求方法,谢谢
mysql中的concat用法!
使用mysql中,我想把表product的数据备份到同个服务器创建一个新表出来,刚学习mysql,用SELECT INTO 出错
mysql delete语句删除指定列的指定关键字的所以数据
Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
mongodb
如果你遇到数据库难题:
访问www.zzzyk.com 试试
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,