【发布时间】:2020-02-29 20:20:07
【问题描述】:
我正在尝试使用准备好的语句将值插入数据库,但有时我需要为某个值插入文字“DEFAULT”,我该怎么做?
CREATE TABLE test (id int, firstname text default 'john', lastname text default 'doe');
这就是我想要做的,但是使用准备好的语句:
insert into test (id, firstname, lastname) VALUES ('1', DEFAULT, DEFAULT);
但这会导致错误(原因很明显):
PREPARE testprep (integer, text, text) AS INSERT INTO test (id, firstname, lastname) VALUES ($1, $2, $3);
EXECUTE testprep('1',DEFAULT,DEFAULT);
错误:
ERROR: syntax error at or near "DEFAULT"
我使用 SQL-Fiddle 创建的两个示例:
【问题讨论】:
标签: postgresql prepared-statement