要从数据库中删除某些记录时,需要Perl DELETE操作。以下是从TEST_TABLE删除AGE等于30的所有记录的过程。此操作将执行以下步骤。
根据所需条件准备SQL查询。这将使用prepare() API完成。
执行SQL查询以从数据库中删除所需的记录。这将使用execute() API完成。
释放固定手柄。这将使用 finish() API完成。
如果一切正常,请执行 此操作,否则您可以回滚完整的事务。
$age = 30; my $sth = $dbh->prepare("DELETE FROM TEST_TABLE WHERE AGE = ?"); $sth->execute( $age ) or die $DBI::errstr; print "删除的行数:" + $sth->rows; $sth->finish(); $dbh->commit or die $DBI::errstr;
如果您正在执行UPDATE,INSERT或DELETE,则没有从数据库返回的数据,因此执行此操作有捷径。您可以使用do语句执行以下任何命令。
$dbh->do('DELETE FROM TEST_TABLE WHERE age =30');
如果成功,则返回true值;如果失败,则返回false值。实际上,如果成功,它将返回受影响的行数。在该示例中,它将返回实际删除的行数。