【发布时间】:2019-01-02 03:37:17
【问题描述】:
我已经跟踪了错误消息的来源:
/*
* A materialized view would either need to save parameters for use in
* maintaining/loading the data or prohibit them entirely. The latter
* seems safer and more sane.
*/
if (query_contains_extern_params(query))
ereport(ERROR,
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
errmsg("materialized views may not be defined using bound parameters")));
这是为什么?为什么物化视图需要保存参数?
我正在使用 Elixir,但无法使用 Ecto 创建视图:
Repo.query("CREATE MATERIALIZED VIEW $1 AS
SELECT * FROM tasks WHERE
resource_type = $2 AND
task_type = $3
", [view_name, resource_type, task_type])
但是
Repo.query("CREATE MATERIALIZED VIEW \"#{view_name}\" AS
SELECT * FROM tasks WHERE
resource_type = '#{resource_type}' AND
task_type = '#{task_type}'
", [])
工作正常。
如果可以的话,请告诉我我错过了什么。
【问题讨论】:
标签: postgresql elixir ecto