(0) exportieren Drucken
Alle erweitern

mssql-Objekt

Letzte Aktualisierung: August 2013

Ermöglicht die direkte Verwendung von Transact-SQL-Code für die Arbeit mit Tabellen in der SQL-Datenbank.

Kann in allen Serverskriptvariationen verwendet werden:

  1. Tabellenvorgangsskripts wie insert, update, read und del

  2. Skripts des Zeitplanungsmoduls und

  3. benutzerdefinierten APIs

Das mssql-Objekt verfügt über die folgenden Methoden:

  • query

  • queryRaw

  • open

Führt eine durch eine TSQL-Zeichenfolge angegebene Abfrage aus. Die Ergebnisse werden an den success-Rückruf des options-Objekts zurückgegeben. Wenn der params-Parameter vorhanden ist, kann die Abfrage Parameter enthalten.

mssql.query(sql, params, options)

 

Parameter Beschreibung

sql

Die auszuführende TSQL-Zeichenfolge. Die ?-Platzhalter werden, falls vorhanden, durch den Inhalt des Arrays params ersetzt.

params

Ersetzen der ?-Platzhalter in der sql-Zeichenfolge.

options

Die Rückruffunktionen success und optional error (ausführliche Informationen finden Sie in den Hinweisen).

Führt eine durch eine TSQL-Zeichenfolge angegebene Abfrage aus. Die Ergebnisse werden an den success-Rückruf des options-Objekts zurückgegeben. Wenn der params-Parameter vorhanden ist, kann die Abfrage Parameter enthalten. Die zurückgegebenen Ergebnisse weisen das raw-Format auf.

Das raw-Format ist ein JSON-Format, das aus einem metadata-Abschnitt besteht, in dem die Spalten des Resultsets beschrieben werden, und einem rows-Abschnitt, der mehrere Zeilenelemente enthält. Jedes Zeilenelement enthält einen Eintrag für jede Spalte im Resultset. Ein Beispiel finden Sie unter Verwenden von Serverskripts in mobilen Diensten.

mssql.queryRaw(sql, params, options)

 

Parameter Beschreibung

sql

Die auszuführende TSQL-Zeichenfolge. Die ?-Platzhalter werden, falls vorhanden, durch den Inhalt des Arrays params ersetzt.

params

Ersetzen der ?-Platzhalter in der sql-Zeichenfolge.

options

Die Rückruffunktionen success und optional error (ausführliche Informationen finden Sie in den Hinweisen).

Öffnet eine Verbindung mit der SQL-Datenbank der mobilen Dienste. Die Verbindung wird als Argument an den success-Handler zurückgegeben. Anschließend können Sie die folgenden Funktionen für das connection-Objekt aufrufen: close, queryRaw, query, beginTransaction, commit und rollback

mssql.open(options)

 

Parameter Beschreibung

options

Die Rückruffunktionen success und optional error (ausführliche Informationen finden Sie in den Hinweisen).

 

Syntax Beschreibung

{ success: function(results) {…..}, error: function() { … }}

Die success-Funktion ermöglicht den Zugriff auf die Ergebnisse eines für die SQL-Datenbank ausgeführten Vorgangs. Die error-Funktion ist optional.

Alle drei Methoden dieses Objekts verwenden den Parameter options, der zwei Rückruffunktionen umfasst: eine success-Funktion und eine optionale error-Funktion.

Die Funktion success nimmt einen Parameter results an: In dieser Funktion können Sie die Ergebnisse des SQL-Datenbankvorgangs verarbeiten.

Die optionale error-Funktion wird für Fehlerbehebungen verwendet, die über die in Azure-Mobile Dienste verfügbaren Standardverfahren hinausgehen.

Fehler können auftreten, wenn die Verbindung mit der Datenbank unterbrochen wird bzw. ein ungültiges Objekt oder eine falsche Abfrage gefunden wird. Beim Auftreten eines Fehlers wird dieser standardmäßig in den Serverskripts protokolliert und ein Fehlerergebnis in die Antwort geschrieben. Da mobile Dienste eine standardmäßige Fehlerbehandlung bieten, müssen Fehler, die im Dienst auftreten können, nicht behandelt werden.

Sie können die standardmäßige Fehlerbehandlung überschreiben, indem Sie eine explizite Fehlerbehandlung implementieren, wenn eine bestimmte kompensierende Aktion ausgeführt oder das globale console-Objekt verwendet werden soll, um ausführlichere Informationen in das Protokoll zu schreiben.

Weitere Informationen finden Sie unter Verwenden von Serverskripts in mobilen Diensten.

Die folgende Abfrage kann Bestandteil verschiedener Serverskripts sein. Sie weist keine Parameter auf und gibt drei Datensätze aus der statusupdate-Tabelle im results-Parameter der success-Funktion zurück.

   mssql.query('select top 3 * from statusupdates', {
      success: function(results) {
         console.log(results);
      },
      error: function(err) {
                console.log("error is: " + err);
      }
   });

Im folgenden Beispiel wird eine benutzerdefinierte Autorisierung in einem Einfügeskript implementiert, indem für den anfordernden Benutzer Berechtigungen aus der permissions-Tabelle gelesen werden. Bei Ausführung der Abfrage wird der ?-Platzhalter in der TSQL-Zeichenfolge durch den angegebenen Parameter ersetzt, der dem Feld userID des eingehenden Parameters user entspricht.

function insert(item, user, request) {
    var sql = "SELECT _id FROM permissions WHERE userId = ? AND permission = 'submit order'";
    mssql.query(sql, [user.userId], {
        success: function(results) {
            if (results.length > 0) {
                // Permission record was found. Continue normal execution. 
                request.execute();
            } else {
                console.log('User %s attempted to submit an order without permissions.', user.userId);
                request.respond(statusCodes.FORBIDDEN, 'You do not have permission to submit orders.');
            }
        },
        error: function(err) {
           console.log("error is: " + err);
        }
    });
}

Anzeigen:
© 2014 Microsoft