我从我给出的备份中将数据导入到表中。现在我意识到这个备份是从具有另一个排序规则的数据库进行的,因此我的字符无效,例如├í
而不是á
。
如何更换这些字符?
我尝试了这个,但不起作用:
UPDATE Table1
SET Field1 = REPLACE(Field1, '├í', 'á')
另请注意,我看不到:├í
,但我看到í
前面有一个空方块。
答案 0 :(得分:1)
你在哪里“看不到├í,但[你]看到前面是一个空方格”?
Table1.Field1的数据类型是什么?需要更改某些Field1行的二进制内容是什么? Field1的整理是什么,您可以使用
找到它SELECT SQL_VARIANT_PROPERTY(Field1,'Collation') FROM Table1;
可能就像更改UPDATE语句以在Unicode中指定其内容一样简单:
UPDATE Table1 SET
Field1 = REPLACE(Field1, N'├í', N'á')
或者可能不是。如果没有,如果你发布SELECT CAST(Field1 AS VARBINARY(40))时得到的结果,或者任何长度给出完整的Field1内容,它会有所帮助。您可能需要在REPLACE表达式中应用归类规范。