【问题标题】:Cannot delete table无法删除表
【发布时间】:2012-08-03 08:43:00
【问题描述】:

我似乎无法删除我的表 387047224813。API 调用失败并出现未定义错误,当我通过控制台尝试时它没有抱怨,但它没有删除桌子也是。

我该如何解决这个问题?

为了确认,我正在使用 API 文档中的以下 API 代码,它适用于任何其他表,但不适用于这个:

# Delete a table
def deleteTable(service, projectId, datasetId, tableId):
  try:
    service.tables().delete(projectId=projectId, datasetId=datasetId, tableId=tableId).execute()

  except AccessTokenRefreshError:
    print ("The credentials have been revoked or expired, please re-run the application to re-authorize")

  except Exception as err:
    print 'Undefined error' % err

  except:
    print "\nWARNING: Table [" + tableId + "] doesn't exist!\n"

我收到错误未定义的错误,没有任何解释

Web 控制台中的 Delete Table 命令也没有删除该表这一事实让我认为BigQuery 这个特定的表可能存在问题。

【问题讨论】:

  • 您好,欢迎来到 SO!请发布一些代码或您正在做的任何事情,以澄清您的问题。就目前而言,这只是猜测,我们更喜欢能够根据事实给出答案。 =)
  • 澄清一下,我正在使用 API 文档中提供的 API 代码示例来删除一个表,该表适用于任何其他表。我也试过通过控制台选项,点击删除表选项。
  • 嗨,Juan:您还发现那个单表有这个问题吗?
  • 嗨,迈克尔,我是。事实上,我使用同一个选择的输出创建了第二个表,我也不能删除这个表。我在对乔丹的回答中给出了下表的正确细节。谢谢

标签: google-bigquery


【解决方案1】:

BigQuery 表 ID 包含三个部分:项目 ID、数据集 ID 和表 ID。您给“387047224813”的值是一个项目 ID .. 但要删除一个表,您还需要指定一个数据集和表 ID。如果您正在指定数据集和表 id,您现在可以告诉我们它们是哪些吗?

【讨论】:

  • 感谢 Jordan,我在删除两个表时遇到问题,这两个表都是由同一查询创建的。这些表格是:387047224813:pos_dw_api.handParticipant 和 387047224813:pos_dw_api.handParticipant2。
  • 您在 bigQuery 中遇到了一个内部错误。我正在修复。
  • 感谢 Jordan,如果您希望我再试一次,请告诉我。
  • 抱歉延迟了,现在应该已经修复了。 (您能够使表进入错误状态和删除在表上不起作用的问题)。请再试一次,如果您还有其他问题,请告诉我们。
  • 嗨,Jordan,我刚刚尝试了解决这个问题的 4 个表,它们是:handParticipant、handParticipant2、handParticipant3 和 handParticipant4。我无法通过 Web 控制台或 API 调用删除它们中的任何一个。谢谢。
猜你喜欢
  • 2021-01-18
  • 1970-01-01
  • 1970-01-01
  • 2018-08-20
  • 2015-01-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-14
相关资源
最近更新 更多