ingres_set_environment
MaxDB
Ingres-Funktionen
PHP Manual

# ingres_unbuffered_query

(No version information available, might only be in SVN)

ingres_unbuffered_query — Sendet eine SQL-Abfrage an Ingres, ohne die Ergebniszeilen zu puffern

### Beschreibung

mixed ingres_unbuffered_query ( resource `$link` , string `$query` [, array `$params` [, string `$types` ]] )

ingres_unbuffered_query() sendet die angegebene `query` an den Ingres-Server.

Die Abfrage wird Teil der aktuell geöffneten Transaktion. Falls es aktuell keine offene Transaktion gibt, wird mit ingres_unbuffered_query() eine geöffnet. Geschlossen wird sie entweder mit ingres_commit(), wobei die gemachten Änderungen in die Datenbank geschrieben werden, oder mit ingres_rollback(), wobei die Änderungen verworfen werden. Wenn das Skript zuende ist, wird jede geöffnete Transaktion zurückgesetzt (indem die ingres_rollback() aufgerufen wird). Sie können vor dem Öffnen einer neuen Transaktion ingres_autocommit() ausführen, danach werden alle Änderungen sofort nach der Ausführung einer SQL-Abfrage committet. Ingres erlaubt zum selben Zeitpunkt nur eine einzige aktive ungepufferte Abfrage. Jede andere aktive ungepufferte Abfrage wird geschlossen, bevor noch eine SQL-Abfrage gesendet werden kann. Außerdem kann der Datensatzzeiger vor dem Auslesen nicht mit ingres_result_seek() positioniert werden.

> Hinweis: Verwandte Konfigurationen
> Siehe auch die Direktiven ingres.describe und ingres.utf8 der Laufzeit-Konfiguration.

### Parameter-Liste

`link`

  Die Verbindungskennung

`query`

  Eine gültige SQL-Abfrage (siehe im SQL reference guide der Ingres-Dokumentation). Bei der Funktion ingres_query() finden Sie bei dem Parameter query eine Liste der SQL-Kommandos, die nicht mit ingres_unbuffered_query() ausgeführt werden können.

`params`

  Ein Array mit den Parameterwerten für die Abfrage

`types`

  Ein String, der eine Folge von Datentypen für die übergebenen Parameterwerte enthält. Eine Liste der Typ-Codes finden Sie bei der Funktion ingres_query(). Bei der Funktion ingres_query() finden Sie bei dem Parameter types eine Liste der Typ-Codes.

### Rückgabewerte

ingres_unbuffered_query() gibt eine Ergebniskennung zurück, sofern Zeilen gelesen werden können, anderenfalls wird `FALSE` zurückgegeben. Das ist beispielsweise bei einem INSERT-, UPDATE- oder DELETE-Kommando der Fall. Um festzustellen, ob es einen Fehler gab, benutzt man die Funktionen ingres_errno(), ingres_error() oder ingres_errsqlstate().

### Beispiele

Beispiel #1 Ein einfaches ungepuffertes SELECT-Kommando senden

`<?php
$link = ingres_connect("demodb");
$result = ingres_unbuffered_query($link, "select * from user_profile");
while ($row = ingres_fetch_row($result)) {
echo $row[1];
echo $row[2];
}
?>`

Beispiel #2 Abfrageparameter an ingres_unbuffered_query() übergeben

`<?php
$link = ingres_connect("demodb");
$params[] = "Emma";
$query = "select * from user_profile where up_first = ?";
$result = ingres_unbuffered_query($link, $query, $params);
while ($row = ingres_fetch_row($result)) {
echo $row[1];
echo $row[2];
}
?>`

Beispiel #3 Ein BLOB mit Parameter-Typen einfügen

`<?php
$link = ingres_connect("demodb");
// Eine Bilddatei öffnen
$fh = fopen("photo.jpg","r");
$blob_data = stream_get_contents($fh);
fclose($fh);
// Parameter vorbereiten
$params[] = $blob_data;
$params[] = 1201;
// Parameter-Typen definieren
$param_types = "Bi";
$query = "update user_profile set up_image = ? where up_id = ?";
$result = ingres_unbuffered_query($link, $query , $params, $param_types);
if (ingres_errno())
{
echo ingres_errno() . "-" . ingres_error() . "\n";
}
?>`

### Siehe auch

- ingres_query() - Sendet eine SQL-Abfrage an den Ingres-Server
- ingres_fetch_array() - Liest eine Zeile der Ergebnismenge in ein Array ein
- ingres_fetch_object() - Gibt eine Zeile der Ergebnismenge als Objekt zurück
- ingres_fetch_row() - Holt eine Zeile aus einer Ergebnismenge in ein numerisches Array
- ingres_commit() - Beendet eine Transaktion
- ingres_rollback() - Setzt eine Transaktion zurück
- ingres_autocommit() - Schaltet den autocommit-Modus an oder aus
- ingres_set_environment() - Setzt Eigenschaften der Umgebung zur Ausgabesteuerung
- ingres_errno() - Gibt den letzten Ingres-Fehlercode zurück
- ingres_error() - Gibt eine textuelle Beschreibung des letzten Fehlercodes zurück

ingres_set_environment
MaxDB
Ingres-Funktionen
PHP Manual