In InTouch gängige SQL-Aktionen ausführen
- Last UpdatedSep 24, 2024
- 4 minute read
Mithilfe von SQL-Funktionen kann InTouch auf Informationen in Datenbanken zugreifen. Mit diesen Funktionen lassen sich Datensätze in den von Ihnen gewünschten Tabellen auswählen, ändern, einfügen oder löschen.
SQL-Aktionen werden synchron ausgeführt. Die Ausführung des InTouch-Projekts wird daher unterbrochen, solange die SQL-Funktion ausgeführt wird.
Welcher Art die Argumente sind, die einer SQL-Funktion übergeben werden, ist im Folgenden aus der Syntax ersichtlich. Wenn ein Parameter in Anführungszeichen gesetzt ist („Parameter1“), wird genau diese Zeichenfolge verwendet. Wenn keine Anführungszeichen verwendet werden, handelt es sich bei dem Argument um eine Variable, deren aktueller Wert übergeben wird.
Die meisten SQL-Funktionen geben ein Ergebnis zurück. Falls das Ergebnis ungleich Null ist, wurde die Funktion nicht korrekt ausgeführt, und es sind eventuell weitere Aktionen notwendig. Das Ergebnis kann von der Funktion SQLErrorMsg() weiterverarbeitet werden, um aussagefähigere Fehlermeldungen zu erhalten.
Die SQL-Funktionen stehen wie alle anderen Funktionen im InTouch-Skripteditor zur Verfügung. Um eine SQL-Funktion in ein Skript einzufügen, gehen Sie wie folgt vor:
Eine SQL-Funktion in ein Skript einfügen
-
Starten Sie InTouch WindowMaker.
-
Öffnen Sie das gewünschte Skript im Skripteditor.
-
Setzen Sie den Cursor an die Stelle, an der Sie die SQL-Funktion einfügen möchten.
-
Wählen Sie im Bereich Funktionen Modul aus. Das Dialogfeld Funktion wählen wird angezeigt.
-
Wählen Sie die SQL-Funktion aus, die Sie in Ihr Skript einfügen wollen. Die SQL-Funktion wird in Ihr Skript eingefügt.
Die folgende Aufstellung gibt einen Überblick über die Argumente, die von den SQL-Funktionen verwendet werden:
-
Bindeliste
Entspricht dem Namen einer Bindeliste, die in der Datei SQL.DEF definiert ist.
-
VerbindungsID
Das Argument ConnectionID bezieht sich auf Variable vom Typ „Speicher Integer“, die die Nummer (ID) enthält, die jeder neuen Datenbankverbindung von der Funktion SQLConnect() zugewiesen wird.
-
Verbindungszeichenfolge
Die Variable ConnectString benennt das Datenbanksystem und alle weiteren Anmeldeinformationen. Sie wird in folgendem Format eingegeben:
"DSN=Datenquellenname[;Attribut=Wert
[;Attribut=Wert]...]"
Verbindungszeichenfolgen für Microsoft SQL Server
-
Microsoft OLE DB-Provider für SQL Server (empfohlene Benutzung).
"Provider=SQLOLEDB.1;User ID=sa; Password=;Initial Catalog=MeineDB;Data Source=MeinServer;"
Der OLE DB-Provider für SQL Server heißt sqloledb.
-
Microsoft OLE DB-Provider für SQL Server (empfohlene Benutzung)
"Provider=SQLOLEDB.1;uid=sa;pwd=;Database=MeineDB"
-
Microsoft OLE DB-Provider für ODBC (mit dem Standard-Provider MSDASQL für SQL Server):
"DSN=Pubs;UID=sa;PWD=;"
-
Microsoft OLE DB-Provider für ODBC (mit dem Standard-Provider MSDASQL für SQL Server):
"Data Source=Pubs;User ID=sa;Password=;"
Verbindungszeichenfolgen für Oracle
-
Microsoft OLE DB-Provider für Oracle (empfohlene Benutzung)
"Provider=MSDAORA;Data Source=Servername;User ID=Benutzername; Password=Kennwort;"
Verbindungszeichenfolgen für Microsoft Access
Microsoft OLE DB Provider für Microsoft Jet (empfohlene Benutzung). Microsoft.Jet.OLEDB.4.0 ist der native OLE DB-Provider für Microsoft Jet (Microsoft Access-Datenbank-Engine).
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\DBName.mdb;User ID=BenutzerIDZeichf;Password=PasswortZeichf;"
Microsoft OLE DB-Provider für ODBC (mit dem Standard-Provider MSDASQL für MS Access):
"Provider=MSDASQL;DSN=DSNZeichf;UID=Benutzername;PWD=PasswortZeichf;"
-
-
Fehlermeldung
Eine Meldungsvariable, die eine Textbeschreibung des Fehlers enthält.
-
DateiName
Name der Datei, die die Informationen enthält.
-
MaxLaenge
Maximale Länge der Spalte, auf die sich dieser Parameter bezieht. Mit dieser Einstellung wird der Zeichentyp des Parameters (VARCHAR oder LONG VARCHAR (Text)) angegeben. Wenn MaxLänge kleiner oder gleich der maximalen Zeichenlänge für die Datenbank ist, ist der Datentyp VARCHAR. Anderenfalls handelt es sich um LONG VARCHAR.
-
OrderByAusdruck
Legt fest, nach welchen Spalten sortiert werden soll. Es kann lediglich nach Spaltennamen sortiert werden. Der Ausdruck muss wie folgt formatiert werden:
SpaltenName [ASC|DESC]
Um die ausgewählte Tabelle nach einer Spalte in aufsteigender Reihenfolge zu ordnen, müssen Sie folgendes Format angeben:
"Manager ASC"
Zum Sortieren nach mehreren Spalten ist folgendes Format erforderlich:
SpaltenName [ASC|DESC],
SpaltenName [ASC|DESC]
Wenn Sie die ausgewählte Tabelle nach einer Spalte (z. B. Temperatur) in aufsteigender (ASC) und nach einer anderen Spalte (z. B. Zeit) in absteigender (DESC) Reihenfolge sortieren möchten, geben Sie folgendes Format an:
"Temperatur ASC, Zeit DESC"
-
Parameternummer
Nummer des Parameters in der Anweisung.
-
Parametertyp
Datentyp des angegebenen Parameters. Gültige Werte:
Typ
Beschreibung
Char
Zeichenfolge mit fester Länge, ggf. mit Leerzeichen aufgefüllt
Var Char
Zeichenfolge variabler Länge
Dezimal
BCD-Zahl
Ganze Zahl
4-Byte-Integer mit Vorzeichen
Kleine Ganzzahl
2-Byte-Integer mit Vorzeichen
Float
4-Byte-Gleitkommazahl
Double Genauigkeit (Float)
8-Byte-Gleitkommazahl
DateTime
Datum/Uhrzeit (8 Byte)
Datum
4-Byte-Datums-/Zeitwert
Time (Zeit)
4-Byte-Datums-/Zeitwert
No Typ
Kein Datentyp
-
Parameterwert
Tatsächlicher festzulegender Wert.
-
Genauigkeit
Genauigkeit des Dezimalwerts, maximale Zeichenlänge oder Länge des Datum/Uhrzeit-Werts in Byte.
-
Datensatznummer
Nummer des abzurufenden Datensatzes.
-
Ergebnis
Variable vom Typ „Integer“, die von den meisten SQL-Funktionen zurückgegeben wird. Wenn die Funktion erfolgreich ausgeführt wurde, wird als ResultCode Null (0), ansonsten ein negativer Ganzzahlwert zurückgegeben.
-
Maßstab
Bestimmt die Anzahl der Nachkommastellen in einem Dezimalwert. Dieser Wert muss nur dann angegeben werden, wenn er für den Typ des auf NULL zu setzenden Parameters relevant ist.
-
AnweisungsID
Bei der Arbeit mit dynamisch erstellten Anweisungen gibt SQL eine StatementID zurück, die intern verwendet wird.
-
SQLAnweisung
Eigentliche Anweisung, z. B.:
Ergebnis=SQLSetStatement(VerbindungsID,"Select PostenNr, PostenName from PostenInfo");
-
Tabellenname
Der Parameter TableName enthält den Namen der Tabelle, auf die Sie in der Datenbank zugreifen bzw. die Sie erstellen möchten.
-
Schablonenname
Der Parameter TemplateName ist der Name der Schablone in der SQL.DEF-Datei, die die Tabelle definiert.
-
WhereAusdruck
Definiert eine Bedingung, die jeder Zeile der Tabelle einen Wahrheitswert (wahr oder falsch) zuordnet. Die Funktion ruft dabei nur diejenigen Zeilen der Tabelle ab, für die diese Bedingung wahr ist. Der Ausdruck muss folgendes Format haben:
SpaltenName Vergleichs_Operator Ausdruck
Hinweis: Bei Textspalten muss der Ausdruck in Hochkommata angegeben werden.
Durch den Ausdruck im folgenden Beispiel werden alle Zeilen ausgewählt, deren Spalte „Name“ den Wert „EmployeeID“ enthält:
Name='MitarbID'
Im folgenden Beispiel werden alle Zeilen ausgewählt, die Teile-Nummern zwischen 100 und 199 enthalten:
TeilNr>=100 und TeilNr<200
Im folgenden Beispiel werden alle Zeilen ausgewählt, für die in der Spalte „Temperatur“ ein Wert von über 350 angegeben ist:
Temperatur>350
Related Links
- Datenbankverbindungen auf- und abbauen
- Eine neue Tabelle erstellen
- Eine Tabelle löschen
- Daten aus einer Tabelle abrufen
- Neue Datensätze in eine Tabelle schreiben
- Vorhandene Datensätze in einer Tabelle aktualisieren
- Datensätze aus einer Tabelle löschen
- Anweisungen mit Parametern ausführen
- Eine SQL-Anweisung aus einer Datei laden
- Eine SQL-Anweisung vorbereiten
- Parameter für Anweisungen festlegen
- Parameter in Anweisungen zurücksetzen
- Eine Anweisung ausführen
- Belegte Ressourcen freigeben
- mit Transaktionsgruppen arbeiten
- Das ODBC-Administrator-Dialogfeld zur Laufzeit öffnen