2012-06-26 2 views
0

인코딩되지 않은 특수 문자가 포함 된 텍스트가있는 mysql 데이터베이스가 있습니다. 예를 들어 테이블에 텍스트가있는 셀이 있습니다. Texas A&M모든 mysql 텍스트를 ascii 형식으로 변환

데이터베이스의 모든 텍스트에 적절한 ascii 양식이 있어야합니다. 예 : Texas A&MTexas A&M이어야합니다.

큰 데이터베이스이므로 this ASCII chart의 모든 문자가 처리되고 변환되었는지 확인하고 싶습니다.

이 작업을 수행하는 좋은 방법은 무엇입니까?

답변

1

당신은 "이 ASCII 차트"의 모든 문자가 인쇄 가능한 문자를 포함하고 있는지 확인하고 싶다고 말하면서 내가 말하는 것을 실제로하고 싶지는 않습니다. 대신 XML, URL 또는 HTML을 인코딩하려고합니다.

가장 간단한 방법은 가지고있는 XML 처리 도구에 데이터를로드하고 작업을 수행하는 것입니다. 즉, 실제로 사람들이 "미리 인코딩 된"데이터를 저장하고있는 시간의 99 %를 찾았습니다. 일부 출력을 위해 데이터를 인코딩하려고합니다. 데이터를 기본 형식으로 저장 한 다음 사용/출력을 인코딩하는 것이 훨씬 더 좋습니다.

이유는 간단합니다. 창 제목이 "Installing X&Y Application" 인 응용 프로그램을 본 적이 있습니까? 이는 데이터가 "웹 출력에만 사용됨"으로 인식되어 사전 인코딩 되었기 때문입니다. 그러나 HTML, URL 및 XML 교환 컨텍스트에서는 웹 출력이 다르므로 미리 인코딩 된 데이터는 실제로 출력 시간에 올바른 인코딩을 수행하는 대신 이러한 선택 사항 중 하나에 귀결됩니다.

실제로이 작업을 수행하려는 경우 사용중인 환경 (실제 데이터베이스 유형 및 사용 가능한 프로그래밍 언어)에 대한 자세한 정보를 제공해야합니다.

+0

당신이 맞습니다, 웹 사이트에서 데이터가 사용되기 때문에 변환 목적은 XML을 반환하는 웹 서비스 호출을 통해 전달 될 것입니다 (모바일 장치로) 문자를 변환하기 전에 (특히 모바일 장치) 그러나 나는로드 하에서 실제로 미리 데이터를 변환하는 것이 더 좋을 것이라고 생각했다. 그렇게 큰 거래가 아니겠습니까? – Sababado

+0

데이터가 거의 정적 인 경우 데이터를 사전 변환하여 변환 비용과 스토리지 비용을 자체적으로 지불 할 수있는 이점이 있습니다. 데이터에 액세스 한 횟수에 따라 휴식 시간이 결정됩니다. 긍정적 인 예를 들어, 많은 컨텐트 관리 시스템 온라인은 이스케이프 된 버전의 사물을 저장하는'Cached' 테이블을 유지합니다. 이 컨텍스트에서는 캐시 된 사본이 없거나 소스 데이터가 변경된 경우 액세스 할 때 생성됩니다. 이 컨텍스트에서도 원본 데이터는 그대로 유지되며 * 전용 * 사용이 HTML로 출력되기 때문에 캐시는 사전 렌더링되고 이스케이프 처리됩니다. – Godeke

+0

데이터는 대부분 정적입니다. 일부 데이터는 1 년에 한 번 변경 될 수 있습니다. 하루 6K ~ 8K 웹 서비스 요청이 예상됩니다 (웹 사이트는 이미 하루에 약 12K를 제공합니다). 캐싱 된 DB는 좋은 생각처럼 들리지만 현재 충분한 저장 공간이 있는지 확인해야합니다. – Sababado