如何从azure数据库中的表中删除行?

时间:2013-04-02 18:11:24

标签: javascript windows azure windows-8 windows-store-apps

正在开发一个Windows商店的javascript应用程序。该应用程序通过移动服务与Azure集成。我想删除与特定ID匹配的特定记录。

说我是否在表(项目)中有四列(不,名称,标题,消息,ID)

我想删除id = 5和title ='stackoverflow'的整行。什么代码将执行该操作?

2 个答案:

答案 0 :(得分:2)

鉴于您有对table对象的引用,您需要从表中获取实际行,然后只需在table对象上调用del(item, callback)方法。您可以从已检索对象的列表中获取实际行,或使用where method获取它。

类似于:

var myTable = client.getTable('MyItem');
// here is a code to get the actual item
myTable.del(item);

或更简单:

myTable.where({ id: 5, titile: "stackoverflow" })
    .read()
    .done(function (results) {
        var result = results[0];
        if (result != null && typeof (result) != "undefined") {
            todoTable.del(result);
        }
    });

答案 1 :(得分:0)

根据移动服务服务器脚本参考:

http://msdn.microsoft.com/en-us/library/windowsazure/jj554210.aspx

删除语法为Table.del(itemOrId, options)。如果您已经知道要删除的行的ID,只需将其传递给del .. table.del(5),而不是先获取该项,然后将其删除。

我的初步答案假设您使用的是服务器端脚本,但听起来您使用的是JS客户端库,并且只需要一个对象。如果你真的想传递一个id,我会尝试将它作为object参数传递,然后更新服务器端删除脚本以使用Table.del(itemOrId, options),或者在服务器端删除脚本中添加id参数并传递null对象。