PHP bietet die Möglichkeit, Statements aller Art an die Datenbank zu schicken. Das Aufrufen von SQL ist sehr einfach und fügt sich nahtlos in das einfache Grundkonzept von PHP ein.
Um SQL abzusetzen, verwenden Sie am besten die Funktion pg_query:
<?php
$cstr="host=localhost port=5432 dbname=test user=eg";
$conn = @pg_connect ($cstr);
if ($conn)
{
echo ("Datenbankverbindung ok!");
$createtable = "CREATE TABLE t_user (
id int4,
name text
)";
$insert1 = "INSERT INTO t_user(id, name) VALUES(1, 'eg')";
$insert2 = "INSERT INTO t_user(id, name) VALUES(2, 'hs')";
checksql($conn, "BEGIN");
checksql($conn, $createtable);
checksql($conn, $insert1);
checksql($conn, $insert2);
checksql($conn, "COMMIT");
@pg_close( $conn );
}
else
{
echo ("Datenbankhandle nicht ok!");
}
function checksql($conn, $sql)
{
$result = @pg_query($conn, $sql);
if (!$result)
{
@pg_query($conn, "ROLLBACK");
@pg_close($conn);
echo ("Rollback bei Query: $sql <br>");
die;
}
}
?>
Mit Hilfe der Funktion checksql prüfen wir, ob das Statement korrekt ausgeführt worden ist. Der Übersicht halber bündeln wir die SQL Aufrufe in einer Funktion.