perl数据库添加、删除、更新、查询操作例子

时间:2021-05-22

注意:连接时候使用SID指定的database,所以没有在连接中指定database.

#!/usr/bin/perluse strict;use warnings;use DBI;my $db_name="geneva_admin";my $db_passwd="geneva_admin";my $dbh=DBI->connect("dbi:Oracle:","$db_name","$db_passwd") or die "Can't connect to oracle database:$DBI::errstr\n"; my $sth=$dbh->prepare("select a,b from a_tmp where a=2") or die "Can't prepare SQl prepare:$DBI::errstr\n";$sth->execute or die "Can't execute:$DBI::errstr\n";while (my @row = $sth->fetchrow_array()){ my ($a,$b) = @row; print "1..\$a=$a,\$b=$b\n";}$sth->finish();my $row=3;my $sql="select a,b from a_tmp where a = ?";$sth=$dbh->prepare($sql) or die "Can't prepare SQl prepare:$DBI::errstr\n";$sth->execute($row) or die "Can't execute:$DBI::errstr\n";while (my @row = $sth->fetchrow_array()){ my ($a,$b) = @row; print "2..\$a=$a,\$b=$b\n";}$sth->finish();my $row_a=3;my $row_c=0;$sql="select a,b from a_tmp where a = ? and c = ?";$sth=$dbh->prepare($sql) or die "Can't prepare SQl prepare:$DBI::errstr\n";$sth->execute($row_a,$row_c) or die "Can't execute:$DBI::errstr\n";while (my @row = $sth->fetchrow_array()){ my ($a,$b) = @row; print "3..\$a=$a,\$b=$b\n";}$sth->finish();for $row(1,2,3){$sql="select a,b from a_tmp where a = ?";$sth=$dbh->prepare($sql) or die "Can't prepare SQl prepare:$DBI::errstr\n";$sth->execute($row) or die "Can't execute:$DBI::errstr\n";while (my @row = $sth->fetchrow_array()){ my ($a,$b) = @row; print "4..\$a=$a,\$b=$b\n";}}$sth->finish();#for $row(1,2,3){#$sql="insert into a_tmp# values (?,?,?)";#$sth=$dbh->prepare($sql) or die "Can't prepare SQl prepare:$DBI::errstr\n";#$sth->execute($row,$row+1,$row+2) or die "Can't execute:$DBI::errstr\n";#}##$dbh->commit;#$sth->finish();#$sql="insert into a_tmp# values (100,30,2)";#$sth=$dbh->prepare($sql) or die "Can't prepare SQl prepare:$DBI::errstr\n";#$sth->execute or die "Can't execute:$DBI::errstr\n";##$dbh->commit;#$sth->finish();for $row(1,2,3){$sql="update a_tmp set b = ? , c = ? where a = ?";$sth=$dbh->prepare($sql) or die "Can't prepare SQl prepare:$DBI::errstr\n";$sth->execute($row+100,$row+50,$row) or die "Can't execute:$DBI::errstr\n";}#$dbh->commit;$sth->finish();for $row(1,2,3){$sql="delete from a_tmp where c=2";$sth=$dbh->prepare($sql) or die "Can't prepare SQl prepare:$DBI::errstr\n";$sth->execute or die "Can't execute:$DBI::errstr\n";}#$dbh->commit;$sth->finish();$dbh->do("insert into a_tmp values (1,1,1)") or die "$DBI::errstr\n";$dbh->do("delete from a_tmp where c=51") or die "$DBI::errstr\n";#$dbh->commit;$sth->finish();$dbh->disconnect;

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章