#!/usr/bin/perl -w
use strict;
use DBI; #连接数据库用,与mysql数据库打交道,如果你有其他数据库的驱动也可以与其他数据库打交道.
my $dbh;
my $rows;
my $dsh;
my $sql;
my $ref;
向mysql数据库里插入3条记录:
$dbh = DBI->connect("DBI:mysql:database=test;host=localhost","test","test",{RaiseError => 1}); #利用DBI连接mysql数据库
$rows = $dbh->do("insert into tt values(1,'test1'),(2,'test2'),(3,'test3')");
$dbh->disconnect();
$dsh = DBI->connect("DBI:mysql:database=test;host=localhost","test","test",{RaiseError =>1}); #向mysql数据库查询数据,返回给perl
$sql = $dsh->prepare("select * from tt");
$sql->execute();
while($ref=$sql->fetchrow_hashref()) #将依次的打印出此表的记录
{
my $id = $ref->{'id'};
my $name = $ref->{'name'};
print "$id---$name\n";
}
$dsh->disconnect(); #关闭连接数据库
下面是上面的执行结果:
------------------------------------
1---test1
2---test2
3---test3
------------------------------------
如果是删除与更新也差不多,只是在sql语句的部分进行变换就OK了.
以上数据库里的表为tt,结构为:
mysql> desc tt;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
| name | varchar(30) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.00 sec)