SQL Server 2008 : replace string

标签 sql sql-server tsql string

我有一个表格,其中一列的多行中包含错误符号(“�”)。

下面的 TSQL 脚本不起作用。

UPDATE S
SET S.Offering_Details = REPLACE(S.Offering_Details, '�', '...')
FROM tblSacrifices S

相关列的数据类型为 nvarchar(230),并允许空条目。

数据来自 Excel 并通过 Visual Studio Windows 应用程序转换的 csv 文件。数据最初是“...”,但我认为也许 word/excel 将其归类为一个字符(而不是 3 个单独的“.”)。当我的应用程序从 CSV 文件读取原始字符串时,它(无意中)在将数据提交到数据库之前将“...”替换为“�”。

请帮忙

最佳答案

想通了。 感谢大家的帮助。

我必须转换为二进制。所有超过 65500 的 unicode 字符都需要这个,因为正常的 REPLACE() 不起作用。

UPDATE S
SET S.Offering_Details = REPLACE(S.Offering_Details, nchar(65533) COLLATE Latin1_General_BIN, '...')
FROM tblSacrifices S

关于SQL Server 2008 : replace string,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3333952/

相关文章:

sql - 将列值从 'male' 替换为 'female' 并将 'female' 替换为 'male'

python - AttributeError: 'NoneType' 对象没有属性 'email' 。 Flask-sqlalchemy

具有聚合函数的 SQL GROUP BY CASE 语句

sql-server - Microsoft SQL Server 2008 Management Studio 中的备用枚举数据类型是什么?

sql-server - "flatten"层次结构表的快速方法?

sql - 在 SQL 中计算百分比

sql - 将 char 数据存储为 nvarchar 有什么危害? (而且不一致)

sql-server - SQL Server字符替换大型数据集

sql-server - 仅当最近时才从暂存插入到最终

ios - FMDB sqlite 的 sql 查询不起作用