返回列表 回复 发帖

用perl访问mysql数据库

作者:小歪歪
日期:2001-1-12 16:36:22

一. 安装DBI模块
步骤1:
从TOOLS栏目中下载DBI.zip,下载完后用winzip解开到一个temp目录,共有三个文件:
Readme
DBI.ppd
DBI.tar.gz
步骤2:
在DOS窗口下,temp目录中运行下面的DOS命令:
ppm install DBI.ppd
如果提示无效命令,可在perl/bin目录下运行
二. 安装DBD-Mysql模块
从软件下载中下载DBD-Mysql.zip,安装方法同一.
三. 准备数据库
启动mysql,首先创建一个数据库mydata,然后创建一个表address
mysql> create database mydata;
Query OK, 1 row affected (0.00 sec)
mysql> use mydata;
Database changed
mysql> create table address (
-> id int(5) not null,
-> name varchar(40) not null,
-> email varchar(50) not null,
-> telephone int(12) null);
Query OK, 0 rows affected (0.05 sec)
输入些数据:
mysql> insert into address values (
-> 1,’Nighthawk’,’nighthawk@163.net’,92384092);
Query OK, 1 row affected (0.00 sec)
四. 下面用perl程序来插入若干记录并做查询.
  1. use DBI;
  2. #连接数据库mydata
  3. my $dbh = DBI->connect(’DBI:mysql:mydata’) or die "无法连接数据库: " . DBI->errstr;
  4. print "插入若干记录n";
  5. my $sth = $dbh->prepare(q{
  6. INSERT INTO address (id, name,email,telephone) VALUES (?, ?, ?, ?)
  7. }) });
  8. print "输入记录,回车结束:";
  9. while (&#36;inputdata =<>) {
  10. chop &#36;inputdata;
  11. last unless(&#36;inputdata);
  12. my (&#36;id, &#36;name,&#36;email, &#36;tel) = split( /,/, &#36;inputdata);
  13. &#36;sth->execute(&#36;id, &#36;name, &#36;email,&#36;tel)
  14. }
  15. &#35; &#36;dbh->commit;
  16. print "下面根据输入的名字打印出EMAIL地址和电话n";
  17. my &#36;sth = &#36;dbh->prepare(’SELECT * FROM address WHERE name=?’)
  18. or die &#36;dbh->errstr;
  19. print "请输入姓名,回车结束:";
  20. while (&#36;inputname =<>) {
  21. my @data;
  22. chomp &#36;inputname;
  23. last unless(&#36;inputname);
  24. &#36;sth->execute(&#36;inputname) or die "错误: " . &#36;sth->errstr;
  25. while (@data = &#36;sth->fetchrow_array()) {
  26. print "Email:&#36;data[2]t Telephone:&#36;data[3]n";
  27. }
  28. }
  29. &#35;断开连接
  30. &#36;dbh->disconnect;
复制代码

                     我是一个呼吸着现在的空气而生活在过去的人
               这样的注定孤独,孤独的身处闹市却犹如置身于荒漠
                                     我已习惯了孤独,爱上孤独
                                 他让我看清了自我,还原了自我
                             让我再静静的沉思中得到快乐和满足
                                   再孤独的世界里我一遍又一遍
                                   不厌其烦的改写着自己的过去
                                             延伸到现在与未来
                                       然而那只是泡沫般的美梦
                                 产生的时刻又伴随着破灭的到来
                         在灰飞烟灭的瞬间我看到的是过程的美丽
                                      而不是结果的悲哀。。。
返回列表