Форум: "Базы";
Текущий архив: 2009.04.05;
Скачать: [xml.tar.bz2];
ВнизКак в ADOConnection1.ConnectionString указать для русских букв Найти похожие ветки
← →
Раиса © (2008-08-08 13:23) [0]Я не использую заранее создаваемый источник данных DSN. На машине под ХР в ADOConnection1.ConnectionString кодировку не указывала и русские буквы из базы отображались (в DBGrid). А под Вистой вместо русских букв кракозябры (в DBGrid).
Нашла ссылку
http://www.connectionstrings.com/?carrier=mysql
но строка типа Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;CharSet =UTF8;
(вместо UTF8 сз1251) ни к чему не привела.
В my.ini вроде всё прописано. БД на локальных компах.
Как правильно указать кодировку в ADOConnection1.ConnectionString ?
← →
stas © (2008-08-08 13:32) [1]Я яе-то непонял, вам надо чтобы в ConnectionString были русские буквы или отображать данные, которые в базу введены?
← →
stas © (2008-08-08 13:34) [2]Какая СУБД.
← →
alex-drob © (2008-08-08 13:35) [3]> [1] stas © (08.08.08 13:32)
смотри
> А под Вистой вместо русских букв кракозябры (в DBGrid).
← →
Раиса © (2008-08-08 13:35) [4]вместо русских букв кракозябры (в DBGrid).
Мне кажется, что указывать надо в ADOConnection1.ConnectionString, но пример с указанной ссылкой не помогает.
← →
stas © (2008-08-08 13:52) [5]Раиса © (08.08.08 13:35) [4]
какая СУБД???
← →
Плохиш © (2008-08-08 13:55) [6]
> stas © (08.08.08 13:52) [5]
> какая СУБД???
Читать не умеешь?
← →
Johnmen © (2008-08-08 13:58) [7]
> Плохиш © (08.08.08 13:55) [6]
> Читать не умеешь?
Ну зачем так со школьниками?
Он же и математику не знает, и геометрию. Но научится, дайте срок. Побольше...
← →
Игорь Шевченко © (2008-08-08 14:58) [8]Висту снести не предлагать ?
← →
Раиса © (2008-08-08 15:20) [9]Игорь Шевченко © (08.08.08 14:58) [8]
У юзеров? И купить им все лицензионный ХР? :)
Суть-то: чтоб и в ХР, и в Висте работало.
Программа и работает, если настроить источник данных, но этого тоже не надо предлагать.
← →
sniknik © (2008-08-08 15:44) [10]> У юзеров? И купить им все лицензионный ХР? :)
"даунгрейд" вреде бесплатен.
> Программа и работает, если настроить источник данных
когда подключаешь мастером и выбираешь "использовать строку подключения" (кнопка "сборка" рядом) то при выборе рабочего DSN он обычно переносит параметры в строку... остается только заменить имя DSN на драйвер и рабочая строка готова.
если не переносит, то это грустно но в принципе драйвер это делать не обязан, если же все перенесло но не работает, то вывод - "внешние" параметры не используются драйвером... это баг, драйвер нужно менять.
← →
alex-drob © (2008-08-08 15:45) [11]> Программа и работает, если настроить источник данных, но
> этого тоже не надо предлагать.
То есть если настроить то всё работает, но настраиать нельзя, я правильно понял?
← →
Раиса © (2008-08-08 16:15) [12]sniknik © (08.08.08 15:44) [10]
Переносит, но не всё.
Provider=MSDASQL.1;Password=1;Persist Security Info=True;User ID=root;Data Source=fishery_local
Не хватает то чего надо: set names cp1251
Это для 3.51.12. Остальные 22 и 23 я не смотрела - переносят или нет. Но просто так тоже не работают. Я их тоже ставила
alex-drob © (08.08.08 15:45) [11]
Поняли правильно: программа должна работать без установки источника данный, коннект через строку подключения. И еще раз повторюсь: в Окнах ХР работает.
← →
sniknik © (2008-08-08 16:24) [13]> Переносит, но не всё.
не на ту кнопку жмешь... (использовать имя источника данных) судя по характеру составленной строки.
← →
Раиса © (2008-08-08 16:27) [14]sniknik © (08.08.08 16:24) [13]
А где та кнопку, на которую надо жать? Жму в Дельфях в ADOConnection...
← →
sniknik © (2008-08-08 16:30) [15]> Жму в Дельфях в ADOConnection...
это вызов мастера. в нем и кнопки. именно про него написано. читай.
← →
Раиса © (2008-08-08 16:44) [16]Я вроде так и делаю, а на выходе строка как написано выше:(08.08.08 16:15) [12]
Если через сборку, то вообще всё подвисает (и в ХР. и в Висте).
И ничего там нету про 1251...
← →
sniknik © (2008-08-08 16:56) [17]> Если через сборку, то вообще всё подвисает (и в ХР. и в Висте).
не должно. проверь с другими драйверами (необязательно mysql, например с access (наверняка есть)).
может это таже проблема, только с другой стороны.
> И ничего там нету про 1251...
а чего ты там про него ждешь, хелпа чтоли?
максимум параметр CharSet инициализируется, и вообще откуда оно там будет, если "вообще всё подвисает"??? или всетаки строку получить удается?
← →
Раиса © (2008-08-08 17:01) [18]Подвисает-подвисает на двух компах пробовала. Жду CharSet типа 1251 (не хелпа, естественно).
Строку не удалось получить ни на одном компе. Но надо через "сборку"?
Еще дома проверю. Спасибо. И с версиями коннектора проверю (у меня есть 12, 22,23)
← →
sniknik © (2008-08-08 17:52) [19]> Но надо через "сборку"?
не самоцель. метод только для того, чтобы гарантированно правильно перенести параметры из того, что работает в то, что у тебя самому составить не получается.
т.к.
> Программа и работает, если настроить источник данных
← →
Раиса © (2008-08-08 19:06) [20]sniknik © (08.08.08 17:52) [19]
Все верно. Понятно, что не "надо", а "можно".
Через "сборку" для Мускула (коннектор 3.51.12) зависает и на домашнем компе. Для Access "сборка" выдает строку.
А так хочется вставить строку с charset и чтобы она работала. Не знаю, что и делать.
← →
palva © (2008-08-08 23:01) [21]Я когда-то пробовал сделать по документации
http://dev.mysql.com/doc/refman/5.1/en/myodbc-configuration-connection-parameters.html
Кодировку нужно указать в файле my.cnf
В строке соединения при помощи option нужно указать, что ODBC должно использовать my.cnf
option=65536 (это FLAG_USE_MYCNF)
Куда я помещал на клиенте файл my.cnf - уже не помню, но по тем же принципам, где этот файл размещается на сервере. У меня заработало.
Только это было давно, и я использовал версию 5.0. Кроме того, возможно, я не понял ваш вопрос.
← →
Раиса © (2008-08-09 00:16) [22]palva © (08.08.08 23:01) [21]
Это или не то, не знаю, но почитала типа. Увидела "charset The character set to use for the connection. Added in 3.51.17. ". Значит, и не надо было пробовать 3.51.12. Спасибо.
Установила 3.51.23. Через "сборку" (не зависла!!!) увидела знакомые цифирки STMT=set names cp1251 (а я-то вставляла как в примере CharSet=...). Попробую в понедельник вставить в строку с ADOConnection1.ConnectionString, а то дома нету Висты (а в ХР и так работает). Если интересно, то сообщу о результате (надеюсь и мечтаю о положительном исходе).
За советы спасибо БОЛЬШОЕ sniknik ©.
← →
Раиса © (2008-08-11 23:54) [23]Под Вистой получилось путем добавления в строку ADOConnection1.ConnectionString найденного STMT=set names cp1251 (нету кракозябров в строке DBGrid-а). А под ХР и без указания кодировки работает. Версия коннектора 3.51.23 была взята.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2009.04.05;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.006 c