我有以下查询:
update Qtable
set Q1 = ' If the alternative
hypothesis is as Ha : µ ≠µ0 ;
where QID = '856'
Q1
的数据类型为nvarchar(max)
。
现在我在数据库中更新并看到而不是Ha : µ ≠µ0
,我得到了
Ha : µ ?µ0
不确定更新语句为何替换≠with?我理解它是一个特殊字符,但应该应用哪些设置来保存值?
答案 0 :(得分:3)
您需要确保使用N前缀为Unicode字符串文字添加前缀。 像这样:
update Qtable set Q1=' If the alternative
hypothesis is as Ha :'+ N'µ ≠µ0' ;
where QID='856'
QUERY 1:(旧查询'字符串)
SELECT 'If the alternative
hypothesis is as Ha:µ ≠µ0';
<强>输出:强>
If the alternative hypothesis is as Ha:µ ?µ0
QUERY 2:(新查询&#39;字符串)
SELECT 'If the alternative
hypothesis is as Ha:' + N'µ ≠µ0';
<强>输出:强>
If the alternative hypothesis is as Ha:µ ≠µ0
FOR DEMO检查此链接:
http://sqlfiddle.com/#!18/adfb7/1
如果您没有使用NVARCHAR,那么您将not equal character
替换为其他角色。
Nvarchar存储UNICODE数据。如果您有要求存储 UNICODE或多语言数据,nvarchar是选择。 Varchar商店 ASCII数据,应该是您正常使用的数据类型。
答案 1 :(得分:1)
使用此声明:
update Qtable
set Q1 = N'If the alternative hypothesis is as Ha : µ ≠µ0'
where QID = '856'