我有一个正在构建的应用程序(Spring Boot,PostgreSQL);我正在针对数据库从文件sqlStatements.sql执行sql语句。在某些情况下,驱动程序似乎在插入语句的前面附加了一个空格字符,并且在尝试创建函数时,尽管在定义表时不会发生这种情况。我在sql字符串上使用trim()方法无济于事。在记录sql语句时,没有空格字符,但是在查看PostgreSQL日志时,确实可以找到它。这是驱动程序的已知问题吗?我需要在数据库端进行设置吗?还是我需要使用Java进行提取工作以避免此错误?

粘贴到此处后,空间消失了,所以我添加了它; sql文件都是UTF-8。

应用日志:



PostgreSQL日志:



对于任何反馈,我们都表示感谢。

最佳答案

各种sql文件之间的文件编码不同。我不得不将编码设置为“UTF-8”,而不是“带BOM的UTF-8”。

https://apple.stackexchange.com/questions/46586/textedit-removes-byte-order-mark-bom-from-unicode-utf-files-how-to-fix

关于sql - PostgreSQL驱动程序在某些SQL语句上添加隐藏字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42597992/

10-11 22:25
查看更多