perl操作mysql_perl脚本中对数据库的操作

perl中DBI模块为mysql数据库相关操作的接口,首先需要在环境中安装DBI模块。perl处理数据库操作的大致步骤如下:

#声明使用DBI模块

use DBI;

#设置数据库连接参数,指定连接数据库名,数据库所在服务器ip地址,连接用户名,密码

# db_name为要连接的数据库名,ip为数据库所在服务器ip地址

my $database='DBI:mysql:database=db_name;host=ip';

my $user='user_name';

my $pw='password';

#连接数据库

my $dbh=DBI->connect($database,$user,$pw,{'RaiseError'=>1})||die "can't connect to the database:$DBI::errstr\n";

# 如需要支持中文,则执行如下语句。以保证中文数据以用utf8编码方式存储到数据库中。同时注意使用数据库客户端时也要用uft8编码查看数据,否则查看到的数据可能乱码。

$dbh->do("set names utf8");

以下列举几个数据操作:

统计记录总数:

# key_word为表的主键,table_name

my $sql0="select count(key_word) from table_name";

my $sth0=$dbh->prepare("$sql0");

$sth0->execute();

#读取一行数据,并将数据放入数组中。

my $ref0= $sth0->fetchrow_array();

print "$ref0\n";

$sth0->finish();

循环处理查询并更新一张表的记录

# 从表中查询记录

my $sql="select * from table_name";

my $sth=$dbh->prepare("$sql");

$sth->execute();

# $sth->fetchrow_hashref()作为一个哈希表的引用取出下一行。这个方法取一行数据并且返回包含字段名/值对的一个哈希表的一个引用。

while(my $ref= $sth->fetchrow_hashref())

{

# 打印记录字段,id为主键

print "$ref->{'id'} $ref->{'segment1'} $ref->{'segment2'}\n";

#更新记录

my $update_sql="update table_name set segment1=value1 segment2=value2 where id=$ref->{'id'}";

my $update_sth=$dbh->prepare("$update_sql");

$update_sth->execute();

$update_sth->finish();

}

# 循环结束,进行结束操作。

$sth->finish();

#所有数据库操作结束,断开数据库连接。

$dbh->disconnect();

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值