RPa*_*yne 2 google-cloud-spanner
Google Spanner DDL 脚本在 Spanner 控制台中提交时成功运行,但当使用“--ddl-file”参数通过“glcoud spannerdatabasesddl update”命令执行时,它始终失败并出现错误:
(gcloud.spanner.databases.ddl.update)INVALID_ARGUMENT:解析 Spanner DDL 语句时出错:\n:第 1 行第 1 列出现语法错误:解析时遇到“EOF”:ddl_statement
命令示例:
gcloud spanner 数据库 ddl 更新 test-db
--instance=test-instance
--ddl-file=table.ddl
猫表.ddl
创建表区域 (region_id STRING(2) NOT NULL, name STRING(13) NOT NULL,) PRIMARY KEY (region_id);
互联网上只有另一处提及这一相同情况。有没有人得到“ddl-file”参数来成功工作?
该问题(很可能)是由 DDL 脚本中的最后一个分号引起的。该--ddl-file选项似乎接受具有多个 DDL 语句的脚本,这些语句可以用分号 ( ;) 分隔,但最后一个语句不应以分号终止。这样做会导致gcloud在最后一个 DDL 语句之后尝试解析另一个 DDL 语句,却发现没有任何 DDL 语句,从而引发错误Unexpected end of file。
所以TLDR:删除脚本中的最后一个分号,它应该可以工作。
| 归档时间: |
|
| 查看次数: |
2557 次 |
| 最近记录: |