Re: perl + mysql + transakcje
Witam!
> Pytanie pomocnicze: czy via DBI nie możesz wysłać dowolnego zapytania
> SQL i odczytać jego wyników?
Jesli "autocommit" to taka sama zmienna jak, dla przykladu "version", to
mozesz ja "wyciagnac" tak:
#!/usr/bin/perl
# Ładuje moduły
use DBI;
# Stałe
my $DB = 'TwojaBD';
my $HOST = 'TwojHost';
my $USER = 'NazwaUzytkownika';
my $PASSWD = 'HasloUzytkownika';
# Łączy się z bazą danych
my $dbh = DBI->connect("DBI:mysql:$DB:$HOST", $USER, $PASSWD)
|| die("Błąd w czasie połączenia z bazą danych!\n");
# Tworzy zapytanie SQL i odpytuje bazę
$sql_query = "SHOW VARIABLES LIKE 'version'";
#print "$sql_query\n";
$sth = $dbh->prepare($sql_query)
|| die("Błąd w czasie przetwarzania zapytania SQL!\n");
$sth->execute
|| die("Błąd w czasie wykonywania zapytania SQL!\n");
my (undef, $version) = $sth->fetchrow_array;
#print "\$version=$version\n";
if ($version ne "") {
# Zmienna "version" ustawiona
# Zrób coś.
}
else {
# Zmienna "version" nie ustawiona
# Zrób coś innego.
}
# Rozłącza się z bazą danych
$sth->finish;
$dbh->disconnect;
Pozdrawiam
PT
Reply to: