理解PostgreSQL 中的“Syntax Error at End of Input”
在PostgreSQL 中,經常出現“syntax error at end of input”的錯誤訊息表示預期語法與解析器收到的輸入之間存在差異。讓我們深入研究為什麼在您的特定情況下會出現此錯誤:
您的查詢使用「?」作為參數佔位符,與 MySQL 相容,但與 PostgreSQL 不相容。在 PostgreSQL 中,準備好的語句使用「$1」、「$2」等作為參數佔位符。依下列方式修改查詢將解決此問題:
db.Query(`SELECT COUNT(*) as N FROM email WHERE address = `, email)
此變更可確保查詢語法遵守 PostgreSQL 的約定。
PostgreSQL 錯誤訊息確實可能很神秘,但在這種情況下,由於佔位符不正確,解析器將輸入的結尾誤解為語法錯誤。將查詢與 PostgreSQL 語法對齊,可以避免此錯誤。
以上是為什麼我在 PostgreSQL 查詢中收到「輸入結束時出現語法錯誤」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!