Q&A에서 옮겨왔습니다.
----
mysql에서 처럼 insert나 update시 자동으로 컬럼의 크기에 맞춰서 문자열을 잘라주는 기능을 하도록 하는 patch를 하나 만들어봤습니다.
postgresql-7.4.1을 기준으로 만들었는데 7.4에서도 될 겁니다. 그 이하에서는 잘 모르겠네요. 아주 간단하니까 보시고 버젼에 맞춰서 수정하시면 큰 문제 없을겁니다.
postgresql 소스와 이 patch를 임시 디렉토리에 넣고 다음과 같이 해 주십시오.
gzip -dc postgresql-7.4.1.tar.gz | tar xvf -
cd postgresql-7.4.1
patch -po < ../auto_char_trim.patch
그리고 나서 컴파일, 인스톨, 실행..
아~ 사용법은...
psql로 들어가셔서
set auto_char_trim=true
하시면 자동으로 잘라 줍니다.
postgresql.conf에 넣어두시면 실행시에 자동으로 값이 지정됩니다.
auto_char_trim=true
이렇게요.
test해보시고 리플 주십시오. 이런 기능이 되니.. 편하긴 하네요.
전 php를 주로 쓰는데 java처럼 unicode가 잘 되는게 아니라서 문자열을 자르면 한글 중간에서 잘라지기 때문에 좀 복잡한 처리를 해줘야 했었는데... postgresql이 멀티바이트를 잘 처리해 주니 이렇게 하는 것도 좋네요.
그냥 급조한 것이니 버그가 있을 수 있습니다. 전 책임 안집니다. ^^;;
만들고 나니 어딘가에 있을 것 같은 불안감... 미리 찾아볼껄... |