Google Cloud Spanner模拟器创建表报错:CHECK约束未实现
根因
你遇到的报错是旧版Cloud Spanner本地模拟器的固有特性限制:报错信息中的UNIMPLEMENTED: Check Constraint is not implemented已经明确说明,该版本模拟器并未实现CHECK约束相关功能,与DDL语法正确性、网络连接状态无关。云端正式环境的Cloud Spanner完全支持CHECK约束,不存在该问题。
解决方法
- 优先升级本地Spanner模拟器到最新版本,新版模拟器已经补全了CHECK约束的支持,升级后重新执行对应DDL即可正常建表。
- 若暂时无法升级模拟器,本地开发测试阶段可临时删除DDL中的CHECK约束定义,待部署到云端Spanner环境时再加回约束,不会影响生产环境的校验能力。
- 若本地测试必须保留枚举值校验能力,可先在应用代码层实现临时校验逻辑替代数据库层面的CHECK约束,上线后再切换为数据库约束即可。
内容的提问来源于stack exchange,提问作者James B
相关产品推荐
相关产品推荐

