首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >巧妙的3-使用纯SQL插入时如何获得正确的(数据库)模式

巧妙的3-使用纯SQL插入时如何获得正确的(数据库)模式
EN

Stack Overflow用户
提问于 2021-11-02 16:45:36
回答 1查看 40关注 0票数 0

我正在尝试让基本的普通SQL示例在Slick 3中工作,在Postgres上,但使用自定义DB模式,比如local而不是默认的public one。在执行以下代码时,我很难插入行

代码语言:javascript
复制
sqlu"INSERT INTO schedule(user_id, product_code, run_at)  VALUES ($userId, $code, $nextRun)"

他说

代码语言:javascript
复制
org.postgresql.util.PSQLException: ERROR: relation "schedule" does not exist

这个表之所以存在,是因为当我在insert语句中使用local.作为schedule前缀时,它可以正常工作。如何才能将正确的模式提供给此查询?

我使用它作为akka-projection处理程序的一部分,所有像维护偏移量这样的投影内部机制在local模式上都能像预期的那样工作。

我不能简单地将schema作为变量,因为它在解析参数时出错:

代码语言:javascript
复制
sqlu"INSERT INTO ${schema}.schedule(user_id, product_code, run_at)  VALUES ($userId, $code, $nextRun)"
EN

回答 1

Stack Overflow用户

发布于 2021-11-04 03:25:48

可以使用#${value}插入架构名称

代码语言:javascript
复制
sqlu"INSERT INTO #${schema}.table ..."
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69814091

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档