2012-12-19 3 views
0

내 SQL Server 2008 R2 데이터베이스에 문자열 열 (nvarchar)이 있습니다. 그리고 이전 데이터 중 일부는 ASCII를 표시합니다. 내 사이트의 사용자에게 보여줘야하며 데이터베이스의 데이터를 유니 코드로 변환하는 것을 선호합니다. 이 작업을 수행하는 빠른 방법이 있습니까? 내가 알아야 할 단점이 있습니까? 내 문제에ASCII에서 유니 코드로의 SQL db

예 : 데이터베이스에서

, 내가 대신 단골의 문자의 특수 문자를 참조하십시오. Amédée으로되어있는 사용자의 이름이 있는데 대신 Am?d??이 표시됩니다. 다른 경우

내가 대신 따옴표 ( ")의 " 참조하거나 문자 대신 단어 "and"&#.

+0

데이터베이스의 데이터를 어떻게보고 있습니까? 선택 진술? SSMS? 귀하의 웹 사이트? –

답변

0

데이터베이스에 악센트 부호가있는 문자가 있으면 문자 그대로 ASCII가 아닙니다. 이전 DB에서 사용하고있는 코드 페이지를 먼저 찾아서 UTF-8로 변환하고 새 데이터베이스에 저장하십시오.

0

나는 다음과 같은 기능 내장 :

public static string FixString(string textString) 
     { 
      textString = Regex.Replace(textString, "[\t\r\n]*", String.Empty); 
      textString = Regex.Replace(textString, "(\\ )+", " ").Replace(" ", " ").Trim(); // .Replace("-", " "); 
      textString = Regex.Replace(textString, "\\(.*?\\)", String.Empty); 
      textString = HttpUtility.HtmlDecode(textString).Trim(); 
      textString = Regex.Replace(textString, "<.*?>", String.Empty); 
      return textString; 
     } 

을하고 트릭을했다!