使用 Cloud Spanner 从数据库中删除记录

Delete record from database with Cloud Spanner

在 Cloud Spanner 文档的 Node.js 示例中,我学习了如何查询、读取、插入和更新我的 Cloud Spanner 数据库中的记录。 但是我不知道怎么'delete'记录。

由于插入和更新方法只是'tablename.insert(...)'和'tablename.update(...)',我尝试了'tablename.delete(...)'但它删除了table本身。我想删除记录...似乎 DML 语句在查询中不起作用。

如何使用 Google 的 Cloud Spanner 从数据库中删除记录?

你想要deleteRows.

var keys = ['Id1', 'Id2', 'Id3'];
tablename.deleteRows(keys, function(err, apiResponse) {});

Link 文档:Google Cloud Node ⇒ Cloud Spanner ⇒ Table ⇒ deleteRows

正如@Dan McGrath 正确指出的那样,delete() 实际上删除了 table

table.delete()
  .then(function(data) {
    const operation = data[0];
    return operation.promise();
  })
  .then(function() {
    // Table deleted successfully.
  });

要删除一行(记录),请使用 deleteRows()

table.deleteRows(keys)
  .then(function(data) {
    const apiResponse = data[0];
  });

阅读来自 https://cloud.google.com/nodejs/docs/reference/spanner/2.0.x/Table

的更多内容