Home >Backend Development >Golang >Why Am I Getting a 'Syntax Error at End of Input' in My PostgreSQL Query?
Understanding "Syntax Error at End of Input" in PostgreSQL
In PostgreSQL, an error message "syntax error at end of input" often signals a discrepancy between the expected syntax and the input received by the parser. Let's delve into why this error occurs in your specific case:
Your query, which uses '?' as a parameter placeholder, is compatible with MySQL but not PostgreSQL. In PostgreSQL, prepared statements use '$1', '$2', etc. as parameter placeholders. Modifying your query as follows will resolve this issue:
db.Query(`SELECT COUNT(*) as N FROM email WHERE address = `, email)
This change ensures the query syntax adheres to PostgreSQL's conventions.
PostgreSQL error messages can indeed be cryptic, but in this case, the parser misinterpreted the end of input as a syntax error due to the improper placeholders. By aligning your query with PostgreSQL syntax, you can avoid this error.
The above is the detailed content of Why Am I Getting a 'Syntax Error at End of Input' in My PostgreSQL Query?. For more information, please follow other related articles on the PHP Chinese website!