0

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

donc de façon créative

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

4

1 回答 1

0

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

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

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

于 2013-06-14T12:03:15.973 回答