#!/usr/bin/perl -w
use strict;
use warnings;
use Data::Dumper;
use diagnostics;
use DBI;
my $dbh = DBI->connect("dbi:SQLite:dbname=test.db","","", {PrintError=>1,AutoCommit=>1,RaiseError=>1});
my $sth = $dbh->prepare("SELECT id,rls_name,rls_type FROM rls_list WHERE pub=0");
my $rv = $sth->execute;
while ( my @row = $sth->fetchrow_array ) {
my $sth2 = $dbh->prepare("UPDATE rls_list SET pub=1 where id=".$row[0]."");
my $rv2 = $sth2->execute;
}
$sth->finish();
$dbh->disconnect;
Perl: Странности работы с Sqlite3
Столкнулся с проблемой, если я прерываю работу скрипта при помощи Ctrl+C во время выполнения например 101 UPDATE в БД, то результат предыдущих 100 UPDATE запросов не сохраняется в БД.
кстати, а зачем вы используете finish? :)