我有php代码使用下面的语句将数据更新到sql server。
UPDATE [table] SET [third]='Several times (2–5x)' WHERE ...
然而,sql server中更新的数据显示了奇怪的字符Several times (2–5x)
,但如果我尝试在Management Studio中执行SQL语句,它不会显示奇怪的字符。
下面是我的PHP代码:
$sql = "UPDATE [table] SET [third]='Several times (2–5x)' WHERE ..."
$sql_update_user_result = odbc_exec($connection, $sql);
我做错了什么?
发布于 2014-09-10 10:45:40
在我看来像是编码问题。
在执行update查询之前尝试查询"SET NAMES utf8“。
odbc_exec($connection, "SET NAMES utf8");
$sql = "UPDATE [table] SET [third]='Several times (2–5x)' WHERE ..."
$sql_update_user_result = odbc_exec($connection, $sql);
发布于 2014-09-10 11:37:44
2-5x中的连字符不是ascii减号,而是另一个看起来类似的拳击标记(u+2013)。只需删除-并键入-即可。
https://stackoverflow.com/questions/25756508
复制相似问题