Edw*_*Lai 1 python google-bigquery
我曾经在UI中进行查询
这次,我在Cloud Shell中,尝试通过python访问我的数据集和表
from google.cloud import bigquery
client = bigquery.Client()
dataset_id = 'mytest-0001:reports_test'
table_id = 'test_data'
dataset_ref = client.dataset(dataset_id)
dataset = client.get_dataset(dataset_ref)
table_ref = dataset_ref.table(table_id)
table = client.get_table(table_ref)
print('Dataset ID: '.format(dataset_id))
print('Description: '.format(dataset.description))
print(table.schema)
print(table.description)
print(table.num_rows)
Run Code Online (Sandbox Code Playgroud)
我在下面看到一些错误...
google.api_core.exceptions.BadRequest:400 GET https://www.googleapis.com/bigquery/v2/projects/gcd-my-reporting/datasets/mytest-0001:reports_test:无效的数据集ID“ mytest-0001:reports_test” 。数据集ID必须是字母数字(加上下划线,破折号和冒号),并且最长不能超过1024个字符。
由于某些原因,我无法修改数据集ID,是否有解决此问题的想法?
您无需修改dataset id
,只需指定dataset id
不带project id
。如果出于任何原因要指定项目,则必须client
按照本文档中的说明进行定义。
该代码将是:
from google.cloud import bigquery
client = bigquery.Client(project='mytest-0001')
dataset_id = 'reports_test'
Run Code Online (Sandbox Code Playgroud)