Zum Hauptinhalt springen

OdbcParamSet

Die Anweisung wird in Zusammenhang mit ``OdbcParamAdd() verwendet, um den Wert eines externen Statement-Parameters zuzuweisen.

In (obj) muss ein Deskriptor auf ein OdbcStm-Objekt übergeben werden. (int1) definiert den Index des Parameters, deren Wert gesetzt werden soll. Das Argument (var2) definiert den Wert des Parameters.

Konnte die Anweisung ausgeführt werden, wird _ErrOk zurückgegeben. Stimmen der übergebene Datentyp nicht mit dem in OdbcParamAdd() definierten Datentyp überein, gibt die Anweisung _ErrType zurück.

Wird als Wert (var2) NULL übergeben, wird der Inhalt auf einen nicht definierten Wert gesetzt. Die Spalte muss auf NULL gesetzt werden können.

info

Wird ein Wert vom Typ handle erwartet, kann nicht NULL übergeben werden. Andernfalls wird _ErrType zurückgeliefert.

Wurde bei ``OdbcParamAdd() der Datentyp _TypeHandle definiert, muss im Parameterwert (var2) der Deskriptor eines Memory-Objektes übergeben werden, ansonsten kommt der Laufzeitfehler _ErrHdlInvalid.

info

Die Variable des Memory-Objektes muss mit dem Datentyp handle deklariert sein.

Beispiel:

// Abfrage vorbereiten
tOdbcStm # tOdbcCon->OdbcPrepare('INSERT INTO Customer (ID,NAME,DESCRIPTION) VALUES (?,?,?)');
if (tOdbcStm > 0)
{
// Parameter der Abfrage definieren
tOdbcStm->OdbcParamAdd(_TypeInt);
tOdbcStm->OdbcParamAdd(_TypeAlpha, 50);
tOdbcStm->OdbcParamAdd(_TypeHandle);

// Parameter der Abfrage setzen
tOdbcStm->OdbcParamSet(1, 1000);
tOdbcStm->OdbcParamSet(2, 'vectorsoft AG');
tOdbcStm->OdbcParamSet(3, tMemHdl);

// Abfrage durchführen
tOdbcStm->OdbcExecute();
}

Mögliche Laufzeitfehler: