在我的Go代码中,我有这行代码:
rows, err := conn.Query(`
SELECT id, name, lang, deleted_at, read
FROM categories
WHERE deleted_at < NOW()
`)
当我运行它时,我从PostgreSQL收到错误:
pq: function now() does not exist
(pq是我使用的Go驱动程序)
使用CURRENT_TIMESTAMP也会引发错误.它表示列current_timestamp不存在.直接在psql(命令行)中使用NOW()不会引发错误,一切正常.
知道为什么我从Go应用程序发送查询时不能使用NOW()或CURRENT_TIMESTAMP?
最佳答案 我的键盘上的右键alt键卡住而没有注意到.这使我在按空格键时插入不可破坏的空格. PostgreSQL可能将不可破坏的空间解释为一个字符,它是函数名称的一部分.
插入常规空格代替了解决问题.