0
下面是使用perl连接mysql数据库和检索结果的代码。使用perl连接到数据库时的打印内容
在下面的示例中,samples表有10列。我只是想将记录99的第二列和第三列变成变量。
有人可以帮我吗?
use strict;
use warnings;
use DBI;
my $dbh = DBI->connect('dbi:mysql:perltest','root','password') or die "Connection Error: $DBI::errstr\n";
my $sql = "select * from samples where record='99'";
my $sth = $dbh->prepare($sql);
$sth->execute or die "SQL Error: $DBI::errstr\n";
while (my @row = $sth->fetchrow_array) {
print "@row\n";
}
在此先感谢
感谢。它的工作。我也试过这个“打印连接(”
“,@ row);”在数组“@row”中显示由新行分隔的所有内容。我在print语句中写了“
”,因为我正在使用perl cgi。 –
请原谅我。我认为我读错了。不应该是'$ row [1]'和'$ row [2]'而不是'@row [1]'和'@row [2]'。 – slayedbylucifer
@Dheeraj:是的,它绝对应该,因为@row [1]和@row [2]'是一个元素数组切片。除非用'($ var1,$ var2)= @row [1,2];'替换这两行,否则切片在这里是多余的。就目前而言,这会产生一个警告'标量值@row [1]更好地写为$ row [1]',对于另一个带有'use warnings的赋值类似的警告;'对他不使用警告感到羞耻。 – flesk