如何使用 REST 请求创建 BigQuery 视图
How to create a BigQuery View using REST request
我已经尝试使用 Google Tables: insert 页面构建和发送 REST 请求,其中包含以下(经过清理的)值:
请求参数
projectId:prj-name
datasetId:dataset_name
请求正文
{
"view": {
"useLegacySql": false,
"query": "SELECT * FROM `prj-name.dataset_name.hello_world`"
},
"type": "VIEW",
"tableReference": {
"projectId": "prj-name",
"datasetId": "dataset_name",
"tableId": "v_hello_world"
}
}
建议这些参数应该有效,但 Google returns 以下响应:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "invalid",
"message": "Output field used as input"
}
],
"code": 400,
"message": "Output field used as input"
}
}
我试验过 REST 属性,我认为 400 问题是由包含 tableReference 属性 引起的。但是如果我排除它,我会得到以下替代错误:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "required",
"message": "Required parameter is missing"
}
],
"code": 400,
"message": "Required parameter is missing"
}
}
遗憾的是 "Required parameter" 没有在此错误消息中命名!
我可以使用this code method创建视图,但是该代码方法在修补视图时抛出异常。
感谢您的帮助。我宁愿不必在我的代码中维护两种不同的视图管理方式。
谢谢。
从您的请求中删除 "type": "VIEW",
。
这不是输入参数。这是响应的输出字段。
https://cloud.google.com/bigquery/docs/reference/rest/v2/tables#resource
我已经尝试使用 Google Tables: insert 页面构建和发送 REST 请求,其中包含以下(经过清理的)值:
请求参数
projectId:prj-name
datasetId:dataset_name
请求正文
{
"view": {
"useLegacySql": false,
"query": "SELECT * FROM `prj-name.dataset_name.hello_world`"
},
"type": "VIEW",
"tableReference": {
"projectId": "prj-name",
"datasetId": "dataset_name",
"tableId": "v_hello_world"
}
}
{
"error": {
"errors": [
{
"domain": "global",
"reason": "invalid",
"message": "Output field used as input"
}
],
"code": 400,
"message": "Output field used as input"
}
}
我试验过 REST 属性,我认为 400 问题是由包含 tableReference 属性 引起的。但是如果我排除它,我会得到以下替代错误:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "required",
"message": "Required parameter is missing"
}
],
"code": 400,
"message": "Required parameter is missing"
}
}
遗憾的是 "Required parameter" 没有在此错误消息中命名!
我可以使用this code method创建视图,但是该代码方法在修补视图时抛出异常。
感谢您的帮助。我宁愿不必在我的代码中维护两种不同的视图管理方式。
谢谢。
从您的请求中删除 "type": "VIEW",
。
这不是输入参数。这是响应的输出字段。
https://cloud.google.com/bigquery/docs/reference/rest/v2/tables#resource