Exporter (0) Imprimer
Développer tout

table (objet)

Mis à jour: février 2015

Fournit les fonctionnalités pour utiliser des tables spécifiques.

Cet objet contient les membres suivants :

 

Syntaxe Valeurs de retour Description

del

Table.del(itemOrId, options)

non défini

Supprime un itemID spécifié de la table.

insert

Table.insert(item, options)

non défini

Insère l'item spécifié dans le tableName spécifié.

orderBy

Table.orderBy(arg1, arg2, …)

Objet de requête

Renvoie une instance d'objet de requête dans laquelle la requête est triée en fonction des arguments de nom de colonne spécifiés, par ordre croissant.

orderByDescending

Table.orderByDescending(arg1, arg2, …)

Objet de requête

Renvoie une instance d'objet de requête dans laquelle la requête est triée en fonction des arguments de nom de colonne spécifiés, par ordre décroissant.

read

Table.read(options)

non défini

Lit toutes les données de la table et appelle le gestionnaire de réussite spécifié sur le paramètre options qui passe un tableau de résultats.

ImportantImportant
Vous ne devez pas appeler la méthode read sur des tables de taille illimitée.

select

Table.select(string)

Objet de requête

Renvoie une instance d'objet de requête avec la projection string demandée appliquée.

Table.select(function)

Objet de requête

Renvoie une instance d'objet de requête avec la projection function demandée appliquée.

skip

Table.skip(recordCount)

Objet de requête

Renvoie une instance d'objet de requête qui ignore le premier nombre recordCount d'enregistrements.

take

Table.take(recordCount)

Objet de requête

Renvoie une instance d'objet de requête qui renvoie le nombre recordCount d'enregistrements.

where

Table.where(object)

Objet de requête

Renvoie une instance d'objet de requête filtrée en fonction des valeurs de propriétés JSON de l'object JSON spécifié.

Table.where(function)

Objet de requête

Renvoie une instance d'objet de requête filtrée en fonction de la function spécifié.

update

Table.update(item, options)

non défini

Met à jour l'item spécifié dans le tableName spécifié.

Les méthodes insert, update et del acceptent un objet options, qui peut avoir des gestionnaires de réussite ou d'erreurs définis.

Méthodes de requête (orderBy, orderByDescending, select, skip, take et where) renvoient un objet de requête. Cet objet expose les mêmes méthodes, qui vous permettent de composer des requêtes en tant que série d'appels de méthode.

Le script suivant appelle la méthode where pour filtrer les lignes renvoyées par les valeurs d'objet spécifiées. Lorsqu'au moins un enregistrement est renvoyé, il est supposé que l'utilisateur dispose des autorisations nécessaires pour soumettre une commande et l'insertion s'exécute ; sinon une erreur est renvoyée.

function insert(item, user, request) {
    var permissionsTable = tables.getTable('permissions');

    permissionsTable.where({
        userId: user.userId,
        permission: 'submit order'
    }).read({
        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.');
            }
        }
    });
}

La fonction suivante, d'une tâche planifiée, exécute Transact-SQL qui renvoie les lignes dupliquées et utilise la méthode del pour supprimer les doublons.

function cleanup_channels() {
    var sql = "SELECT MAX(Id) as Id, Uri FROM Channel " + 
        "GROUP BY Uri HAVING COUNT(*) > 1";
    var channelTable = tables.getTable('Channel');

    mssql.query(sql, {
        success: function(results) {
            if (results.length > 0) {
                for (var i = 0; i < results.length; i++) {
                    channelTable.del(results[i].Id);
                    console.log('Deleted duplicate channel:' + 
                    results[i].Uri);
                }
            } else {
                console.log('No duplicate rows found.');
            }
        }
    });
}

Afficher:
© 2015 Microsoft