为什么某些字符没有从 CFQUERY 正确注入 SQL 服务器?

Why are certain characters not being injected correctly to SQL Server from a CFQUERY?

我在 Lucee 上有一个 Coldfusion 应用 运行ning,它连接到 SQL 服务器数据库。

当我运行直接在SQL服务器管理器中查询如下:

UPDATE article
SET content='20m²'
WHERE id=3159

该列可以填充 20 平方米。

但是,当 运行 来自一个简单 运行 的 cfml 页面时:

更新文章 设置内容='20m²' 其中 id=3159

列填充:20m²

如,出现这个额外的 Â 字符。其他一些特殊字符也会出现这种情况,但大多数都没有问题。这与 jdbc 连接器的某些配置有关吗?我不明白以上两者之间应该有什么区别?将值放在 cfqueryparam 标记中没有区别。

谢谢

如果它是硬编码的,我相信您会希望确保以 Unicode UTF-8 格式保存该文件。

还要确保您的 JVM 参数也能处理它。 管理 > 服务器设置 > Java 和 JVM。 将“-Dfile.encoding=UTF-8”添加到参数中。