Dar*_*nov 4 sql sql-server utf-8 character-encoding
我有一个SQL Server 2008数据库和nvarchar(256)
一个表的字段.疯狂的问题是,当我运行此查询时:
update ruds_values_short_text
set value = '? asjdklasd'
where rud_id=12202 and field_code='detection_limit'
Run Code Online (Sandbox Code Playgroud)
然后
select * from ruds_values_short_text
where rud_id=12202 and field_code='detection_limit'
Run Code Online (Sandbox Code Playgroud)
我得到这个结果:
12202 detection_limit = asjdklasd 11
Run Code Online (Sandbox Code Playgroud)
您可以看到字符≤已在=中转换
这是一个与编码相关的问题,实际上,如果我尝试在Notepad ++中粘贴'≤',它会粘贴'='但是当我将ANSI转换为UTF-8时我得'≤'.
所以..我想我应该用UTF8编写查询..但是怎么样?谢谢.
您需要使用N
前缀,以便将文字视为Unicode,而不是将其视为数据库默认排序规则的代码页中的字符数据.
update ruds_values_short_text
set value = N'? asjdklasd'
where rud_id=12202 and field_code='detection_limit'
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1873 次 |
最近记录: |