【问题标题】:Repair weird characters in Database修复数据库中的奇怪字符
【发布时间】:2013-06-14 09:18:20
【问题描述】:

我遇到了 UTF-8 的问题。所以现在很多记录都被打破了,里面有奇怪的字符,比如..

donc de façon créative

有什么办法可以修复这一切?谢谢!

【问题讨论】:

    标签: sql database utf


    【解决方案1】:

    使用我开发的以下存储过程来删除任何字符并替换为所需的字符。

    CREATE PROC CHAR_REPLACER
    AS
    BEGIN
    SET NOCOUNT ON
    DECLARE @CHARTOREPLACE VARCHAR(MAX)='"ç©'   --SIMPLY PUT HERE A CHAR You want to Replace
    DECLARE @REPLACEWITH VARCHAR(MAX)=' ASC'     --SIMPLY PUT HERE A REPLACING CHAR
    
    DECLARE @POS INT=1
    
    SELECT * FROM A  --DATA BEFORE
    
    WHILE @POS<LEN(@CHARTOREPLACE)
    BEGIN
       UPDATE A SET f1=REPLACE(F1,SUBSTRING(@CHARTOREPLACE,@POS,1),SUBSTRING(@REPLACEWITH,@POS,1))
       WHERE CHARINDEX(SUBSTRING(@CHARTOREPLACE,@POS,1),F1,1)>0
       SET @POS=@POS+1
    END
    
    SELECT * FROM A  --DATA AFTER
    END
    

    请将这些变量修改为参数,这样您就不必每次在该数组中添加新字符时都进行更改..

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-27
      • 2019-06-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多