gpt4 book ai didi

postgresql - 如何在 GO 的准备语句中使用 postgresql DEFAULT 关键字?

转载 作者:IT王子 更新时间:2023-10-29 02:22:37 33 4
gpt4 key购买 nike

假设我有一个表 t1:col1:varchar(255),col2:boolean DEFAULT true

然后我创建了这个准备好的语句 p1:INSERT INTO t1(col1,col2) VALUES ($1,$2)

在 GO 中,我正在执行准备好的语句,但基于条件 1,我想将 DEFAULT 关键字传递给准备好的语句中的第二个参数,即

if condition1 {
sql.Exec(p1,"FOO","DEFAULT") // but this returns an error: invalid input syntax for type boolean: "DEFAULT"
} else{
//pass other parameters to the prepared statement
}

总结:我试图以这条sql语句结束:

INSERT INTO t1(col1,col2) VALUES ('FOO',DEFAULT) 

但我得到这个:

INSERT INTO t1(col1,col2) VALUES ('FOO','DEFAULT')   //quotations on DEFAULT

谁知道我该如何解决这个问题?

最佳答案

我认为这会更好,因为您已经有一个 if/else 来检测您没有要传递的值的情况,而是执行

INSERT INTO t1 (col1) VALUES ('FOO');

并让 postgres 使用另一列的默认值。

关于postgresql - 如何在 GO 的准备语句中使用 postgresql DEFAULT 关键字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40866712/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com