匯出 (0) 列印
全部展開

讀取和寫入資料

更新日期: 2014年4月

在 JavaScript 後端行動服務中,您可以從伺服器指令碼使用 tables 物件來處理 SQL Database 中所儲存的資料。在資料表作業中,tables 是全域物件。

在下列範例中,全域 tables 物件會用來存取 permissions 資料表,系統會查詢此資料表來判斷使用者是否經過授權可建立新的訂單。

function insert(item, user, request) {
    var permissionsTable = tables.getTable('permissions');
    permissionsTable.where({
        userId: user.userId,
        permission: 'submit order'
    }).read({
        success: checkPermissions
    });
    function checkPermissions(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.');
        }
    }
}
note附註
注意:使用 userId 屬性時,我們建議您將權限設定為 Only Authenticated User。否則,您的程式碼必須處理針對未經驗證之使用者傳回的 undefined 值。如需詳細資訊,請參閱<開始使用 Mobile Services 中的使用者>。

在自訂 API 中,tables 物件是取自提供的 request.service 物件,如下列 GET 方法所示。

exports.get = function(request, response) {    
    var myTable = request.service.tables.getTable('permissions');
    // Do something with the table here…
};

在下列範例中,每當更新項目時,就會在 audit 資料表中插入新的記錄。

function update(item, user, request) {
    request.execute({
        success: insertAuditEntry
    });
    function insertAuditEntry() {
        var auditTable = tables.getTable('audit');
        var audit = {
            record: 'checkins',
            recordId: item.id,
            timestamp: new Date(),
            values: JSON.stringify(item)
        };
        auditTable.insert(audit, {
            success: function() {
                // Write to the response now that all data operations are complete
                request.respond();
            }
        });
    }
}

如需詳細資訊,請參閱 Mobile Services 指令碼參考

Microsoft 正展開一份線上問卷調查,了解您對於 MSDN 網站的看法。 如果您選擇參加,您離開 MSDN 網站時即會顯示線上問卷調查。

您是否想要參加?
顯示:
© 2014 Microsoft