如何从另一个表更新表在Azure后端插入脚本

时间:2016-05-30 13:34:42

标签: node.js azure azure-mobile-services

我有一个使用Azure Easy Tables设置的Xamarin.Forms移动应用程序,适用于所有CRUD操作。我现在需要一些node.js服务器端功能,这将使我能够更新tableA中的插入脚本增加tableB中列的列数。即tableB.someId = tableA.someId

到目前为止,我有:

// INSERT into tableA
table.insert(function(context) {

logger.info('Running tableA.insert');

// get tableB
var tableB = azureMobileApps.tables.table('tableB');

// here i need to increase the noOfReviews column on tableB by one
............

我是Azure node.js的完整入门者,有人可以帮忙吗?

伊恩

2 个答案:

答案 0 :(得分:1)

您可以使用类似于以下内容的其他表加载记录:

table.insert(function (context) {
    var tableB = context.tables('tableB');
    var tableBRecords = tableB.where({ id: 'someId' }).read()
        .then(function (records) {
            records[0].count++;
            return tableB.update(records[0]);
        })
        .then(context.execute);
});

您可以在http://azure.github.io/azure-mobile-apps-node/global.html#context找到上下文对象的API文档。

希望这有帮助!

答案 1 :(得分:0)

根据我的理解,我认为您可以尝试执行自定义SQL语句来实现增加tableB列,其值对countA中的相关列进行计数,请参阅“如何:执行自定义SQL”一节语句"文章https://azure.microsoft.com/en-us/documentation/articles/app-service-mobile-node-backend-how-to-use-server-sdk/#CustomAPI