Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Inhalt


Auszug
Liest einen Datensatz aus der Datenbank

.

Prototype


Codeblock
SQL_Select( query )

Parameter


ParameterTypBedeutung
querystringSelect-Statement

Rückgabewert


NummerTypBedeutung
1table/nilDer selektierte Datensatz oder 'nil', wenn kein Datensatz gefunden wurde.

Hinweise


  • Der Mandant muss eingeschränkt werden, dies erfolgt nicht wie zum Teil bei andern Lua-Funktionen automatisch!
  • Würde die Abfrage mehrere Datensätze ergeben, dann wird immer nur der erste zurückgeliefert. Will man mehrere Datensätze lesen, dann empfiehlt es sich, auf Funktionen wie SQL_Fetch oder SQL_C*-Funktionen zurückzugreifen.
  • Das SQL-Statement kann, muss aber nicht mit einem Semikolon beendet werden.
  • Gibt man ein ungültiges SQL-Statement an, führt dies zu einem Laufzeitfehler.
  • Es empfiehlt sich, den Rückgabewert auf ungleich nil zu prüfen, bevor man ihn auswertet, da sonst Laufzeitfehler nicht ausgeschlossen werden können.
  • zum Lesen eines Datensatzes kann auch die Lua-Funktion DB_Select verwendet werden.

Beispiel


Codeblock
languagelua
-- SELECT-Statement zusammenbauen und ausführen
local query = "SELECT * FROM gpktab WHERE finr = " .. SysLogFinr .. " AND perseh = 'wl'"
local gpktab = SQL_Select( query )

-- prüfen, ob gültiges Ergebnis
if gpktab then 
   SY_Msg( "Der Name des Mitarbeiters mit dem Kürzel 'wl' lautet " .. gpktab.nname )
else
   SY_Msg( "Mitarbeiter wl nicht vorhanden im Personalstamm!" )
end