Случилась следующая ситуация:
После очередной переустановки Mandriva Linux решил опробовать PostgreSQL 8.4 тот который идет в репозитории. В итоге все установилось замечательно, но дальше когда начал работать над grails-проектом вдруг откуда не возьмись посыпались какие-то непонятные глюки: перестали вставляться записи в таблицы, плюс перестали редактироваться имеющиеся. Причем все это происходило "через раз".
В итоге оказалось, что я совсем не обратил внимание на кодировку созданной базы данных, делая все "на автомате" лишь бы быстрей, за что и поплатился. В общем в установленной из репозитория СУБД кодировкой template-базы у меня оказалась SQL_ASCII, вместо желаемой UTF8.
Такая оплошность с моей стороны понятное дело не очень-то и простительна, но обиднее всего то, что увидеть причину этого всего оказалось не так уж и тривиально, ведь все работало повторюсь "через раз". Теперь железное правило при работе с СУБД из репозиториев - первоначально проверить кодировку. Плюс это есть повод вспомнить другое правило насчет кодировок везде и всюду - "кодировка UTF8 и точка".
Решение проблемы очень простое: создавая базу данных в PgAdmin следует в качестве кодировки выбрать UTF-8, а в качестве шаблона - template0 и не надеяться на то, что система создаст все правильно за вас.
В общем расслабляться нельзя, нужно быть внимательным.
суббота, 5 декабря 2009 г.
Подписаться на:
Комментарии к сообщению (Atom)
0 коммент.:
Отправить комментарий
что-угодно, только не ругаться