Modul DBI 2

2. Senden einfacher SQL-Statements mit do($sql)

Verwendet wird $dbh zum Absetzen von Statements.
Es kann ein String definiert werden, der das SQL-Statement beinhaltet : $sql .
Beispiel :

$sql = "INSERT INTO kunde VALUES ( "731","Hugendubel","212" )"

Bei komplexeren ( aber einfachen Statements, keine Abfragen ! ) empfiehlt sich ein HERE-Document.
Beispiel:

$sql = <<"END_SQL";
INSERT INTO kunden
VALUES ( "731","Hugendubel","212")
END_SQL

Nach der Definition des Statemnets kann dieses mit dem Datenbankhandle $dbh abgesetzt werden :

$dbh->do($sql);

3. Absenden von Abfragestatements

---------------- SNIP -------------------
$sql = <<"END_SQL";
SELECT ktostd
    FROM konten
    WHERE ktonr = $ktonr
END_SQL
# Abfrage senden
$sth = $dbh->prepare($sql);

# Abfrage ausführen, Rückgabe vorbereiten
$sth->execute();

# Erste Rückgabe abholen
@data = $sth->fetchrow_array();

## Um alle Rückgaben zu holen, wird eine Schleife gebildet
## while ( @rueck = $sth->fetchrow_arry() ) {
##     print join " | ",@rueck,"\n";
## }
## # Die Felder werden durch " | " getrennt

# Daten verarbeiten (...)
# Abfrageaktion explizit beenden
$sth->finish();

# Abmelden von der Datenbank
$dbh->disconnect();
---------------- SNAP -------------------