SQL_Select
- lk
Owned by lk
Liest einen Datensatz aus der Datenbank.
Prototype
SQL_Select( query )
Parameter
Parameter | Typ | Bedeutung |
---|---|---|
query | string | Select-Statement |
Rückgabewert
Nummer | Typ | Bedeutung |
---|---|---|
1 | table/nil | 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