Der 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
-- 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