Zum Hauptinhalt springen

Datenbankverbindung

Verbindungsdetails für die Datenbank.

Das databaseConnection Request Schema ist hier unter databaseConnection zu finden.

Beispiel

"databaseConnection": {
"type": "mssql",
"host": "db.example.com",
"port": 1433,
"username": "db_user",
"password": "db_password",
"database": "ptpData",
"table": "CostCenters",
"clear": true,
"schema": "dbo",
"whereClause": "ControllingArea = 'CA001'",
"limit": 100,
"rawQuery": "SELECT * FROM CostCenters WHERE ControllingArea = 'CA001'",
"options": {
"encrypt": true,
"enableArithAbort": true,
"trustServerCertificate": true,
"connectionTimeout": 30000,
"requestTimeout": 30000,
"pool": {
"max": 10,
"min": 0,
"idleTimeoutMillis": 30000,
"acquireTimeoutMillis": 60000
}
}
}

Beschreibung

type string

  • Gibt den Typ der Datenbank an. Hier ist es "mssql", was für Microsoft SQL Server steht. Außerdem funktionieren "mariadb", "mysql" und "sqlite"

host string

  • Enthält den Hostnamen oder die IP-Adresse des Datenbankservers. In diesem Beispiel ist es "db.example.com".

port number

  • Der Port, über den der Datenbankserver angesprochen wird.

username string

  • Der Benutzername, der für die Authentifizierung am Datenbankserver benötigt wird.

password string

  • Das zugehörige Passwort für die Authentifizierung.

database string

  • Der Name der Datenbank, mit der die Verbindung hergestellt werden soll. In diesem Fall "ptpData".

table string

  • Gibt die Tabelle innerhalb der Datenbank an, auf die zugegriffen wird. Hier handelt es sich um "CostCenters".

clear boolean, optional, default: false

  • Ein boolescher Wert, der angibt, ob vor dem Laden oder Verarbeiten der Daten eine Bereinigung erfolgen soll.

schema string, optional, default: undefined

  • Das Datenbankschema, in dem sich die Tabelle befindet. Standardmäßig ist dies oft "dbo" (Database Owner).

whereClause string, optional, default: undefined

  • Ein Filterausdruck, der als WHERE-Klausel in SQL-Anfragen verwendet wird, um die Datensätze einzuschränken. Hier wird beispielsweise nur auf Datensätze mit "ControllingArea = 'CA001'" zugegriffen.

limit number, optional, default: undefined

  • Legt die maximale Anzahl von Datensätzen fest, die aus der Datenbank abgefragt werden sollen. In diesem Fall ist der Wert 100.

rawQuery string, optional, default: undefined

  • Eine vollständige, rohe SQL-Abfrage, die direkt an die Datenbank gesendet werden kann. Diese überschreibt die automatische Generierung von Abfragen basierend auf den anderen Parametern.

options object, optional, default: undefined

  • Ein Objekt, das zusätzliche Optionen für die Datenbankverbindung enthält

encrypt boolean, optional, deafult: true

  • Ein boolescher Wert, der angibt, ob die Verbindung verschlüsselt werden soll.

enableArithAbort boolean, optional, deafult: true

  • Legt fest, ob die Abfrage bei einem arithmetischen Fehler (z. B. Division durch Null) abgebrochen wird.

trustServerCertificate boolean, optional, deafult: false

  • Wenn true, wird das Serverzertifikat auch ohne Überprüfung akzeptiert. Dies kann in Testumgebungen nützlich sein.

connectionTimeout number, optional, default: undefined

  • Die maximale Zeit in Millisekunden, die versucht wird, eine Verbindung herzustellen, bevor diese abbricht (hier 30000 ms bzw. 30 Sekunden).

requestTimeout number, optional, default: Knex/Treiber-Standard

  • Die maximale Zeit in Millisekunden, die auf die Ausführung einer Abfrage gewartet wird. Wenn nicht gesetzt, wird der Standard des jeweiligen Datenbanktreibers verwendet (z. B. 15000 ms bei MSSQL).

pool object, optional, default: undefined

  • Ein Unterobjekt, das die Einstellungen des Verbindungspools definiert:
max number, optional, default: undefined
  • Die maximale Anzahl gleichzeitig offener Verbindungen im Pool (hier 10).
min number, optional, default: undefined
  • Die minimale Anzahl an Verbindungen, die im Pool vorgehalten werden (hier 0).
idleTimeoutMillis number, optional, default: undefined
  • Die Zeit in Millisekunden, nach der eine inaktive Verbindung aus dem Pool entfernt wird (hier 30000 ms).
acquireTimeoutMillis number, optional, default: undefined
  • Die maximale Wartezeit in Millisekunden, um eine Verbindung aus dem Pool zu erhalten, bevor ein Timeout-Fehler ausgelöst wird (hier 60000 ms bzw. 60 Sekunden).