휴. 다행이 김상기님께서 문제의 심각성을 아신 듯해서 다행입니다.
사실 얼마전에 그 문제를 보고한 후 답변이 표준어 게시판이라 약간 황당했었거든요. ^^;;
이번에 올리신 글은 내용은 정확하지만 실질적인 해결책이 없어서 좀 아쉽습니다. (뭐 그렇다고 김상기님께 해결책을 만들어 내란 뜻은 아닙니다. 단지 여기에 글을 올리면 해결책을 알려주시는 경우가 많아서... 이번에도 제가 잘 모르는 설정등을 변경하면 될 지도 모른다고 생각했었거든요.)
일단 올리신 글에 대하여 몇가지 질문을 드립니다.
1. 사용자가 utf8 문자셋을 사용한다. euc-kr 문자셋을 포기한다.
(먼 미래를 내다본다면, 그리고, 완전히 새롭게 시작한다면, 이 방법이 가장 바람직할 듯싶습니다. )
-> 제가 utf8이란게 뭔지 잘 몰라서 그럽니다만 이 경우에는 기존 데이타를 컨버팅 할 수는 없나요? 그리고 한글 소팅은 문제가 없습니까?
2. 위에서와 같이 pg_verifymbstr() 함수를 해킹해서 쓴다.
(가장 손 쉽게 해결 할 수 있는 방법입니다. 하지만 많은 문제점을 안고 있습니다)
-> 흠. 일단 해결책을 알려주신 것은 감사합니다. 하지만 문제점이 많다고 하셔서... 회사 사이트에 적용하기는 좀 불안하군요. 써도 될까요? 중요한 자료가 많은데...
3. pg_verifymbstr() 함수에 euc-kr 문자셋이 아닌, 확장완성형을 고려해서, 다시 만든다.
-> 저의 능력밖의 문제라... 혹시 만들어 주시면 정말 감사하겠습니다.
4. 확장완성형을 포기한다. (과감한 방법이지만, 이것을 도입한다면, 고의적이든, 고의적이지 않던간에, 사용자의 비표준어 글자들을 막을 수는 있습니다)
-> 헤! 이것은 좀 문제가 있는 듯 합니다. 저번에 제가 오류검사하면서 약 한페이지 정도의 글에서 입력이 안되는 것을 찾는데 (결과적으로는 전에 말씀드렸던 '쫒아옵니다' 였습니다.) 이게 제가 국어실력이 좀 딸려서 그런지 몰라도 엄청 힘들었습니다. 결국은 한줄씩 지워가면서 찾았습니다. 만약에 제가 한페이지 짜리 글을 썼는데 '표준어가 아니라서 저장이 안됩니다'라는 메세지를 받는다면 그거 찾는데 장난 아닐 것 같습니다. 알려줄 수도 없구요.
여기까지입니다. 만일 필요하다면, PostgreSQL 개발자들에게도 이 사실을 알려야 할 듯싶습니다.
-> 알려서 꼭 개선되기를... (에구 7.2 깔고 싶다.)
|