Форум: "Потрепаться";
Текущий архив: 2003.06.09;
Скачать: [xml.tar.bz2];
ВнизКак заставить MS SQL Server 2000 понимать русский шрифт в данных? Найти похожие ветки
← →
Мазут Береговой Рюрикович (2003-05-22 11:43) [0]Такой вопрос, собственно...
← →
Мазут Береговой Рюрикович (2003-05-22 11:45) [1]Нашел такую:
http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/q232/5/80.asp&NoWebContent=1
но что-то не фурычит.
← →
Мазут Береговой Рюрикович (2003-05-22 18:32) [2]Ну, что никто не знает?
← →
clickmaker (2003-05-22 18:53) [3]Енто как? Где шрифт должен быть русским? Применительно к данным понятие "шрифт" вообще как-то не канает, на мой взгляд... Шрифт может быть при отображении этих данных клиентом, а для хранения - енто уже кодировка...
Collation Cyrillic General при установке и нихт проблем
← →
Мазут Береговой (2003-05-22 22:08) [4]Ну, хорошо, пусть кодировка. Не так выразился. Весь день убил что бы эту проблему решить - плохо соображаю.
Только когда устанавливаешь сам SQL надо указывать collation. А если уже установлен? Как быть в таком случае?
← →
vuk (2003-05-22 22:16) [5]Вроде как при создании базы можно collation указать. В BOL что-то было про опцию COLLATE.
← →
Мазут Береговой Рюрикович (2003-05-23 08:15) [6]Короче, решил я эту проблему и сейчас расскажу.
Целый день бродил по интернету, но ответ нашел только на Microsoft.com. (где ж еще ему быть?). Вариантов было несколько.
Вот, например, такой: сохранять unicode данные в полях типа binary, varbinary или picture. Тогда у меня возник вопрос "А как их обратно раскодировать из binary?".
Везде пробегала информация, что unicode данные занимают 2 байта на символ, в то время как ANSI - 1.
Была еще заморочка, на которую я давал ссылку раньше. Но эта тоже не срабатывала. Давала или пустые поля или ????.
Потом я наткнулся на информацию как поменять кодировку - Collation. В BOL я нашел, что надо изменить опцию collation settings из стандарной в кирилическую. Вот тут я и наткнулся на проблему. Опции такой нету в Enterprise manager. Облазил все с верху до низу. Нашел что-то похожее Security/Linked Servers. Но мне не нужен Linked Servers - он у меня один и ни к кому больше не линкуется. Стал искать в каком меню это находится. Уперся в character set и дальше ни-ни.
В конце концов оказалось, что это меню находится в совершенно отдельной программе - rebuild master. И находится в папке mssql7\binn, а называется rebuildm.exe.
Вот здесь есть о ней немного:
http://support.microsoft.com/default.aspx?scid=kb%3ben-us%3b238678
Одно замечание, если кто-нибудь вздумает воспользоваться: после перестройки мастер базы все линки старых баз данных теряются, но физически файлы остаются и их снова можно подключить к серверу. И надо будет восстановить юзерские пароли к этим базам.
Потом, дома я нашел информацию, что перед текстовым полем в unicode надо ставить букву N. Тогда, например, команда insert будет выглядеть так: insert into customers (first_name, last_name) values( N"Мазут",N"Береговой"). После этого все заработало как надо. И здесь опять же надо сделать замечение: типы полей для unicode данных должны начинаться с n. Например, nvarchar, ntext, nchar. Вот это, кстати, я сделал же сразу когда разрабатывал таблицы.
← →
Мазут Береговой Рюрикович (2003-05-23 08:24) [7]Вот линк к последнему замечанию:
http://support.microsoft.com/default.aspx?scid=kb%3ben-us%3b308931
И эта... Я случаем не похож на психа? - сам с собой разговариваю....
Страницы: 1 вся ветка
Форум: "Потрепаться";
Текущий архив: 2003.06.09;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.008 c