我正在尝试使用BigQuery API删除数据集。
使用BigQuery UI手动删除有问题的数据集没有问题,但是当我使用API时,我看到以下错误:
googleapi: Error 400: Dataset myProject:myDataset is still in use, resourceInUse
我已经检查过没有使用数据集的打开连接。
以下是用于删除数据集的代码:
package main
import (
"log"
"context"
"golang.org/x/oauth2"
"golang.org/x/oauth2/jwt"
"google.golang.org/api/bigquery/v2"
)
func main() {
var authConfig *jwt.Config
var projectID = "myProject"
var datasetID = "myDataset"
ctx := context.Background()
oauthClient := oauth2.NewClient(ctx, authConfig.TokenSource(ctx))
service, err := bigquery.New(oauthClient)
if err != nil {
log.Fatal(err)
}
err = service.Datasets.Delete(projectID , datasetID).Context(ctx).Do()
if err != nil {
log.Fatal(err)
}
}
答案 0 :(得分:0)
对于包含表和/或视图的数据集,您有两个选项:
true
选项传递给deleteContents
。这将删除数据集中的所有表格和视图。