perl下十种fetch数据的区别以及返回数据结构
2012-10-15 13:42
459 查看
perl下十种fetch数据的区别以及返回数据结构
1.fetchrow_array 提取下一行数据并将字段保存在数组中返回
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”) or die DBI->errstr;
$sql=”select * from 115_users limit 10″;
$sth=$dbh->prepare($sql);
$rv=$sth->execute;
while(@row_ary=$sth->fetchrow_array){
dump(@row_ary);
print “password: ” .$row_ary[2].”\n”;
}
[/codesyntax]
输出内容:
(
1,
“auto-gre-1\@ttlsa.com”,
“Y9MoErtE+iZG5PkYHMJobhij58E”,
“auto-gre-1″,
)
password: Y9MoErtE+iZG5PkYHMJobhij58E
(
2,
“auto-gre-2\@ttlsa.com”,
“UqHxPoLmKY7ClyCZaXPdHepjUOo”,
“auto-gre-2″,
)
password: UqHxPoLmKY7ClyCZaXPdHepjUOo
2.fetchrow_arrayref 提取下一行数据并返回一个包含字段值的引用数组
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”) or die DBI->errstr;
$sql=”select * from ttlsa_user_00 limit 10″;
$sth=$dbh->prepare($sql);
$rv=$sth->execute;
while($ary_ref=$sth->fetchrow_arrayref){
dump($ary_ref);
print “email: “.$$ary_ref[1].”\n”;
}
[/codesyntax]
输出内容:
[
1,
"auto-gre-1\@ttlsa.com",
"Y9MoErtE+iZG5PkYHMJobhij58E",
"auto-gre-1",
]
email: auto-gre-1@ttlsa.com
[
2,
"auto-gre-2\@ttlsa.com",
"UqHxPoLmKY7ClyCZaXPdHepjUOo",
"auto-gre-2",
]
email: auto-gre-2@ttlsa.com
3.fetchrow_hashref 提取下一行数据并返回一个包含字段名和字段值对的哈希引用
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”) or die DBI->errstr;
$sql=”select * from ttlsa_user_00 limit 10″;
$sth=$dbh->prepare($sql);
$rv=$sth->execute;
while ($hash_ref=$sth->fetchrow_hashref) {
dump($hash_ref);
print “password: ” . $$hash_ref{‘passwd’} . “\n”;
}
[/codesyntax]
输出内容:
{
email => “auto-gre-1\@ttlsa.com”,
passwd => “Y9MoErtE+iZG5PkYHMJobhij58E”,
user_id => 1,
user_name => “auto-gre-1″,
}
password: Y9MoErtE+iZG5PkYHMJobhij58E
{
email => “auto-gre-2\@ttlsa.com”,
passwd => “UqHxPoLmKY7ClyCZaXPdHepjUOo”,
user_id => 2,
user_name => “auto-gre-2″,
}
password: UqHxPoLmKY7ClyCZaXPdHepjUOo
4.fetchall_arrayref 取出所有行内容并返回包含每行字段值的引用数组
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”) or die DBI->errstr;
$sql=”select * from ttlsa_user_00 limit 10″;
$sth=$dbh->prepare($sql);
$rv=$sth->execute;
$ary_ref=$sth->fetchall_arrayref;
dump($ary_ref);
print “@$ary_ref\n”;
foreach (@$ary_ref) {
print “$_->[2]\n”;
}
[/codesyntax]
输出内容:
[
[
1,
"auto-gre-1\@ttlsa.com",
"Y9MoErtE+iZG5PkYHMJobhij58E",
"auto-gre-1",
],
[
2,
"auto-gre-2\@ttlsa.com",
"UqHxPoLmKY7ClyCZaXPdHepjUOo",
"auto-gre-2",
],
]
ARRAY(0x9e7f5d8) ARRAY(0x9e7f578)
password: Y9MoErtE+iZG5PkYHMJobhij58E
password: UqHxPoLmKY7ClyCZaXPdHepjUOo
5.fetchall_hashref($key_field) 取出所有内容并返回每行字段名和字段值对的哈希引用
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”) or die DBI->errstr;
$sql=”select * from ttlsa_user_00 limit 10″;
$sth=$dbh->prepare($sql);
$rv=$sth->execute;
$hash_ref=$sth->fetchall_hashref(user_id);
dump($hash_ref);
print ‘-’ x 20 .”\n”;
print $hash_ref->{’10′}->{‘email’}.”\n\n\n”;
while (($user_id,$value)=each %$hash_ref){
print “\$user_id: $user_id\n”;
while (($key,$value1)=each %$value) {
print “$key ==> $value1\n”;
}
}
[/codesyntax]
输出内容:
{
1 => {
email => “auto-gre-1\@ttlsa.com”,
passwd => “Y9MoErtE+iZG5PkYHMJobhij58E”,
user_id => 1,
user_name => “auto-gre-1″,
},
2 => {
email => “auto-gre-2\@ttlsa.com”,
passwd => “UqHxPoLmKY7ClyCZaXPdHepjUOo”,
user_id => 2,
user_name => “auto-gre-2″,
},
}
——————–
auto-gre-10@ttlsa.com
$user_id: 6
passwd ==> ZWCagapChduSFnB2nJcQ3vOCYI4
email ==> auto-gre-6@ttlsa.com
user_id ==> 6
user_name ==> auto-gre-6
$user_id: 3
passwd ==> 9YiNWIw1bjqEMrCOmbtwFBBqc3U
email ==> auto-gre-3@ttlsa.com
user_id ==> 3
user_name ==> auto-gre-3
融合prepare( ),execute( )和fetchrow_arrayref( )方法的操作:
6.selectrow_array($statement) 返回一行数据的数组
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”,{ PrintError=>0, RaiseError=>1 }) or die DBI->errstr;
$sql=”select * from ttlsa_user_00 limit 10″;
@row_ary=$dbh->selectrow_array($sql);
dump(@row_ary);
my ($count,$max)=@row_ary=$dbh->selectrow_array(“select count(*),max(user_id) from ttlsa_user_00″);
print “number: $count; max: $max\n”;
[/codesyntax]
输出内容:
(
1,
“auto-gre-1\@ttlsa.com”,
“Y9MoErtE+iZG5PkYHMJobhij58E”,
“auto-gre-1″,
)
number: 10; max: 10
7.selectrow_arrayref($statement) 返回一行数据的引用数组
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”,{ PrintError=>0, RaiseError=>1 }) or die DBI->errstr;
$sql=”select * from ttlsa_user_00 limit 10″;
$ary_ref=$dbh->selectrow_arrayref($sql);
dump($ary_ref);
$ary_ref=$dbh->selectrow_arrayref(“select count(*),max(user_id) from ttlsa_user_00″);
my ($count,$max)=@$ary_ref;
print “number: $count; max: $max\n”;
[/codesyntax]
输出内容:
[
1,
"auto-gre-1\@ttlsa.com",
"Y9MoErtE+iZG5PkYHMJobhij58E",
"auto-gre-1",
]
number: 10; max: 10
8.selectrow_hashref($statement) 返回一行数据的字段名与字段值的哈希引用
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”,{ PrintError=>0, RaiseError=>1 }) or die DBI->errstr;
$sql=”select * from ttlsa_user_00 limit 10″;
$hash_ary=$dbh->selectrow_hashref($sql);
dump($hash_ary);
$hash_ary=$dbh->selectrow_hashref(“select count(*) as count ,max(user_id) as max from ttlsa_user_00″);
print “number: $$hash_ary{‘count’}; max: $$hash_ary{‘max’}\n”;
[/codesyntax]
输出内容:
{
email => “auto-gre-1\@ttlsa.com”,
passwd => “Y9MoErtE+iZG5PkYHMJobhij58E”,
user_id => 1,
user_name => “auto-gre-1″,
}
number: 10; max: 10
9.selectall_arrayref($statement) 取出所有行并返回包含所有字段值的引用数组
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”,{ PrintError=>0, RaiseError=>1 }) or die DBI->errstr;
$sql=”select * from ttlsa_user_00 limit 2″;
$array_ary=$dbh->selectall_arrayref($sql);
dump($array_ary);
print “——————————\n”;
foreach $row (@$array_ary){
dump($row);
print “——————————\n”;
foreach $element (@$row) {
print “‘$element’,”;
}
print “\n”;
}
[/codesyntax]
输出内容:
[
[
1,
"auto-gre-1\@ttlsa.com",
"Y9MoErtE+iZG5PkYHMJobhij58E",
"auto-gre-1",
],
[
2,
"auto-gre-2\@ttlsa.com",
"UqHxPoLmKY7ClyCZaXPdHepjUOo",
"auto-gre-2",
],
]
——————————
[
1,
"auto-gre-1\@ttlsa.com",
"Y9MoErtE+iZG5PkYHMJobhij58E",
"auto-gre-1",
]
——————————
’1′,’auto-gre-1@ttlsa.com’,'Y9MoErtE+iZG5PkYHMJobhij58E’,'auto-gre-1′,
[
2,
"auto-gre-2\@ttlsa.com",
"UqHxPoLmKY7ClyCZaXPdHepjUOo",
"auto-gre-2",
]
——————————
’2′,’auto-gre-2@ttlsa.com’,'UqHxPoLmKY7ClyCZaXPdHepjUOo’,'auto-gre-2′,
10.selectall_hashref($statement,$key_field) 取出所有行并返回每行字段名和字段值对的哈希引用
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”,{ PrintError=>0, RaiseError=>1 }) or die DBI->errstr;
$sql=”select * from ttlsa_user_00 limit 2″;
$hash_ary=$dbh->selectall_hashref($sql,user_id);
dump($hash_ary);
print “——————————\n”;
foreach $user_id (keys %$hash_ary) {
print “user_id: $user_id\n”;
print “user_name: $hash_ary->{$user_id}->{user_name}\n”;
}
[/codesyntax]
输出内容:
{
1 => {
email => “auto-gre-1\@ttlsa.com”,
passwd => “Y9MoErtE+iZG5PkYHMJobhij58E”,
user_id => 1,
user_name => “auto-gre-1″,
},
2 => {
email => “auto-gre-2\@ttlsa.com”,
passwd => “UqHxPoLmKY7ClyCZaXPdHepjUOo”,
user_id => 2,
user_name => “auto-gre-2″,
},
}
——————————
user_id: 1
user_name: auto-gre-1
user_id: 2
user_name: auto-gre-2
1.fetchrow_array 提取下一行数据并将字段保存在数组中返回
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”) or die DBI->errstr;
$sql=”select * from 115_users limit 10″;
$sth=$dbh->prepare($sql);
$rv=$sth->execute;
while(@row_ary=$sth->fetchrow_array){
dump(@row_ary);
print “password: ” .$row_ary[2].”\n”;
}
[/codesyntax]
输出内容:
(
1,
“auto-gre-1\@ttlsa.com”,
“Y9MoErtE+iZG5PkYHMJobhij58E”,
“auto-gre-1″,
)
password: Y9MoErtE+iZG5PkYHMJobhij58E
(
2,
“auto-gre-2\@ttlsa.com”,
“UqHxPoLmKY7ClyCZaXPdHepjUOo”,
“auto-gre-2″,
)
password: UqHxPoLmKY7ClyCZaXPdHepjUOo
2.fetchrow_arrayref 提取下一行数据并返回一个包含字段值的引用数组
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”) or die DBI->errstr;
$sql=”select * from ttlsa_user_00 limit 10″;
$sth=$dbh->prepare($sql);
$rv=$sth->execute;
while($ary_ref=$sth->fetchrow_arrayref){
dump($ary_ref);
print “email: “.$$ary_ref[1].”\n”;
}
[/codesyntax]
输出内容:
[
1,
"auto-gre-1\@ttlsa.com",
"Y9MoErtE+iZG5PkYHMJobhij58E",
"auto-gre-1",
]
email: auto-gre-1@ttlsa.com
[
2,
"auto-gre-2\@ttlsa.com",
"UqHxPoLmKY7ClyCZaXPdHepjUOo",
"auto-gre-2",
]
email: auto-gre-2@ttlsa.com
3.fetchrow_hashref 提取下一行数据并返回一个包含字段名和字段值对的哈希引用
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”) or die DBI->errstr;
$sql=”select * from ttlsa_user_00 limit 10″;
$sth=$dbh->prepare($sql);
$rv=$sth->execute;
while ($hash_ref=$sth->fetchrow_hashref) {
dump($hash_ref);
print “password: ” . $$hash_ref{‘passwd’} . “\n”;
}
[/codesyntax]
输出内容:
{
email => “auto-gre-1\@ttlsa.com”,
passwd => “Y9MoErtE+iZG5PkYHMJobhij58E”,
user_id => 1,
user_name => “auto-gre-1″,
}
password: Y9MoErtE+iZG5PkYHMJobhij58E
{
email => “auto-gre-2\@ttlsa.com”,
passwd => “UqHxPoLmKY7ClyCZaXPdHepjUOo”,
user_id => 2,
user_name => “auto-gre-2″,
}
password: UqHxPoLmKY7ClyCZaXPdHepjUOo
4.fetchall_arrayref 取出所有行内容并返回包含每行字段值的引用数组
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”) or die DBI->errstr;
$sql=”select * from ttlsa_user_00 limit 10″;
$sth=$dbh->prepare($sql);
$rv=$sth->execute;
$ary_ref=$sth->fetchall_arrayref;
dump($ary_ref);
print “@$ary_ref\n”;
foreach (@$ary_ref) {
print “$_->[2]\n”;
}
[/codesyntax]
输出内容:
[
[
1,
"auto-gre-1\@ttlsa.com",
"Y9MoErtE+iZG5PkYHMJobhij58E",
"auto-gre-1",
],
[
2,
"auto-gre-2\@ttlsa.com",
"UqHxPoLmKY7ClyCZaXPdHepjUOo",
"auto-gre-2",
],
]
ARRAY(0x9e7f5d8) ARRAY(0x9e7f578)
password: Y9MoErtE+iZG5PkYHMJobhij58E
password: UqHxPoLmKY7ClyCZaXPdHepjUOo
5.fetchall_hashref($key_field) 取出所有内容并返回每行字段名和字段值对的哈希引用
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”) or die DBI->errstr;
$sql=”select * from ttlsa_user_00 limit 10″;
$sth=$dbh->prepare($sql);
$rv=$sth->execute;
$hash_ref=$sth->fetchall_hashref(user_id);
dump($hash_ref);
print ‘-’ x 20 .”\n”;
print $hash_ref->{’10′}->{‘email’}.”\n\n\n”;
while (($user_id,$value)=each %$hash_ref){
print “\$user_id: $user_id\n”;
while (($key,$value1)=each %$value) {
print “$key ==> $value1\n”;
}
}
[/codesyntax]
输出内容:
{
1 => {
email => “auto-gre-1\@ttlsa.com”,
passwd => “Y9MoErtE+iZG5PkYHMJobhij58E”,
user_id => 1,
user_name => “auto-gre-1″,
},
2 => {
email => “auto-gre-2\@ttlsa.com”,
passwd => “UqHxPoLmKY7ClyCZaXPdHepjUOo”,
user_id => 2,
user_name => “auto-gre-2″,
},
}
——————–
auto-gre-10@ttlsa.com
$user_id: 6
passwd ==> ZWCagapChduSFnB2nJcQ3vOCYI4
email ==> auto-gre-6@ttlsa.com
user_id ==> 6
user_name ==> auto-gre-6
$user_id: 3
passwd ==> 9YiNWIw1bjqEMrCOmbtwFBBqc3U
email ==> auto-gre-3@ttlsa.com
user_id ==> 3
user_name ==> auto-gre-3
融合prepare( ),execute( )和fetchrow_arrayref( )方法的操作:
6.selectrow_array($statement) 返回一行数据的数组
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”,{ PrintError=>0, RaiseError=>1 }) or die DBI->errstr;
$sql=”select * from ttlsa_user_00 limit 10″;
@row_ary=$dbh->selectrow_array($sql);
dump(@row_ary);
my ($count,$max)=@row_ary=$dbh->selectrow_array(“select count(*),max(user_id) from ttlsa_user_00″);
print “number: $count; max: $max\n”;
[/codesyntax]
输出内容:
(
1,
“auto-gre-1\@ttlsa.com”,
“Y9MoErtE+iZG5PkYHMJobhij58E”,
“auto-gre-1″,
)
number: 10; max: 10
7.selectrow_arrayref($statement) 返回一行数据的引用数组
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”,{ PrintError=>0, RaiseError=>1 }) or die DBI->errstr;
$sql=”select * from ttlsa_user_00 limit 10″;
$ary_ref=$dbh->selectrow_arrayref($sql);
dump($ary_ref);
$ary_ref=$dbh->selectrow_arrayref(“select count(*),max(user_id) from ttlsa_user_00″);
my ($count,$max)=@$ary_ref;
print “number: $count; max: $max\n”;
[/codesyntax]
输出内容:
[
1,
"auto-gre-1\@ttlsa.com",
"Y9MoErtE+iZG5PkYHMJobhij58E",
"auto-gre-1",
]
number: 10; max: 10
8.selectrow_hashref($statement) 返回一行数据的字段名与字段值的哈希引用
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”,{ PrintError=>0, RaiseError=>1 }) or die DBI->errstr;
$sql=”select * from ttlsa_user_00 limit 10″;
$hash_ary=$dbh->selectrow_hashref($sql);
dump($hash_ary);
$hash_ary=$dbh->selectrow_hashref(“select count(*) as count ,max(user_id) as max from ttlsa_user_00″);
print “number: $$hash_ary{‘count’}; max: $$hash_ary{‘max’}\n”;
[/codesyntax]
输出内容:
{
email => “auto-gre-1\@ttlsa.com”,
passwd => “Y9MoErtE+iZG5PkYHMJobhij58E”,
user_id => 1,
user_name => “auto-gre-1″,
}
number: 10; max: 10
9.selectall_arrayref($statement) 取出所有行并返回包含所有字段值的引用数组
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”,{ PrintError=>0, RaiseError=>1 }) or die DBI->errstr;
$sql=”select * from ttlsa_user_00 limit 2″;
$array_ary=$dbh->selectall_arrayref($sql);
dump($array_ary);
print “——————————\n”;
foreach $row (@$array_ary){
dump($row);
print “——————————\n”;
foreach $element (@$row) {
print “‘$element’,”;
}
print “\n”;
}
[/codesyntax]
输出内容:
[
[
1,
"auto-gre-1\@ttlsa.com",
"Y9MoErtE+iZG5PkYHMJobhij58E",
"auto-gre-1",
],
[
2,
"auto-gre-2\@ttlsa.com",
"UqHxPoLmKY7ClyCZaXPdHepjUOo",
"auto-gre-2",
],
]
——————————
[
1,
"auto-gre-1\@ttlsa.com",
"Y9MoErtE+iZG5PkYHMJobhij58E",
"auto-gre-1",
]
——————————
’1′,’auto-gre-1@ttlsa.com’,'Y9MoErtE+iZG5PkYHMJobhij58E’,'auto-gre-1′,
[
2,
"auto-gre-2\@ttlsa.com",
"UqHxPoLmKY7ClyCZaXPdHepjUOo",
"auto-gre-2",
]
——————————
’2′,’auto-gre-2@ttlsa.com’,'UqHxPoLmKY7ClyCZaXPdHepjUOo’,'auto-gre-2′,
10.selectall_hashref($statement,$key_field) 取出所有行并返回每行字段名和字段值对的哈希引用
[codesyntax lang="perl"]
#!/usr/bin/perl
###################################
### author: www.ttlsa.com ###
### QQ群: 39514058 ###
### E-mail: service@ttlsa.com ###
###################################
use DBI;
use Data::Dump qw(dump);
$driver=”DBI:mysql”;
$host=”localhost:3306″;
$dbname=”test”;
$user=”root”;
$passwd=”123456″;
$dbh=DBI->connect(“$driver:$dbname:$host”,”$user”,”$passwd”,{ PrintError=>0, RaiseError=>1 }) or die DBI->errstr;
$sql=”select * from ttlsa_user_00 limit 2″;
$hash_ary=$dbh->selectall_hashref($sql,user_id);
dump($hash_ary);
print “——————————\n”;
foreach $user_id (keys %$hash_ary) {
print “user_id: $user_id\n”;
print “user_name: $hash_ary->{$user_id}->{user_name}\n”;
}
[/codesyntax]
输出内容:
{
1 => {
email => “auto-gre-1\@ttlsa.com”,
passwd => “Y9MoErtE+iZG5PkYHMJobhij58E”,
user_id => 1,
user_name => “auto-gre-1″,
},
2 => {
email => “auto-gre-2\@ttlsa.com”,
passwd => “UqHxPoLmKY7ClyCZaXPdHepjUOo”,
user_id => 2,
user_name => “auto-gre-2″,
},
}
——————————
user_id: 1
user_name: auto-gre-1
user_id: 2
user_name: auto-gre-2
相关文章推荐
- 数据结构中的List、Set、Map用法以及区别
- Oracle三类数据字典视图的结构的查看以及其区别
- 关于Linklist、Arraylis、Hashmap、Hashset、Hashtable t的特点、区别以及其数据结构
- Yii: 返回数据表中指定字段以及添加自定义字段值
- Mysql复制表结构、表数据以及修改主键
- nodeValue以及其与value的区别以及JS nodeName、nodeValue、nodeType返回类型
- C++学习之旅——结构体和联合体的区别,以及数据对齐方式影响内存大小
- SpringMVC中返回数据Model,ModelAndView,ModelMap的区别
- WebRTC音视频引擎研究(2)--VoiceEngine音频编解码器数据结构以及参数设置
- 脚本查询数据表结构返回,可扩展
- 数据库名(DB_NAME)、实例名(Instance_name)、以及操作系统环境变量(ORACLE_SID) 之间的区别
- 修改数据表DataTable某一列的类型和记录值(正确步骤:1.克隆表结构,2.修改列类型,3.修改记录值,4.返回希望的结果)
- springBoot的返回code数据的处理以及统一异常处理
- C++学习之旅——结构体和联合体的区别,以及数据对齐方式影响内存大小
- RAID结构介绍以及RAID1、RAID0等各种模式的区别
- spring boot新手教程之使用FastJson解析JSON数据以及解决返回中文乱码问题
- ElasticSearch34:初识搜索引擎_mapping复杂数据类型以及object类型数据底层结构揭秘
- php调用方法mssql_fetch_row、mssql_fetch_array、mssql_fetch_assoc和mssql_fetch_objcect读取数据的区别
- IFC标准是为了满足建筑行业的信息交互与共享而产生的统一数据标准,是建 筑行业事实上的数据交换与共享标准。本文概要介绍了IFC标准的产生及发展 历程,IFC的整体框架结构,简要说明了IFC标准的实现方法和过程,描述了 当前的应用以及我们应该更加积极地利用IFC标准为建筑软件行业服务。
- 数据结构之顺序表增、删、查找、初始化以及顺序表输出基本相关操作