Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.09;
Скачать: CL | DM;

Вниз

Кодовые страницы   Найти похожие ветки 

 
quick_sneek   (2005-08-22 22:16) [0]

Платформа - windows 2000 pro. В regional settings стоит настройка English (United Kindom). Default - Russian.
Используется СУБД MSSql Server. База данных создана с collation Cyrrilic General.
При попытке записи русской строки в базу данных - в таблицу попадает абра-кадабра. Перепробовал различные Collation в настройках SQl Server- ни какой реакции. Использовал unicode типы полей таблиц - не помогло.
Если переключить Regional Settings на Russian - все начинает нормально работать.
Кто-нибудь знает, как с подобными вещами бороться?


 
quick_sneak   (2005-08-22 22:25) [1]

Забыл упомянуть, что записать строчку я пытаюсь из Delphi. :)
Причем совершенно неважно, вводиться ли строка в визуальный компонент или прописана жестко в коде.
При работе через Enterprise management console такой пробемы не возникает.
Всем заранее спасибо


 
Alexander Panov ©   (2005-08-22 22:28) [2]

Попробуй на станции на всякий случай вот эти ключи:

REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\DB-Lib]
"AutoAnsiToOem"="ON"
"UseIntlSettings"="ON"


 
sniknik ©   (2005-08-23 00:35) [3]

> Использовал unicode типы полей таблиц - не помогло.
типы в базе это хорошо, но дельфевый VCL юникод не понимает, надо доп. компоненты использовать (tnt к примеру) это если хочеш чтобы с клиента строка в юникоде посылалась не конвертируясь (а то какая разница что в базе если с клиента исковерканное приходит). и кстати метод доступа? BDE его(юникод) тоже не понимает.


 
quick_sneek   (2005-08-23 19:49) [4]

Для доступа использую ADO компоненты.

>но дельфевый VCL юникод не понимает, надо доп. компоненты >использовать
Дело в том, что я пробовал жестко прописывать в коде вставку строки, так что визуальные компоненты здесь вряд ли играют роль

Неужели никак нельзя обойти это??? Может быть надо в windows секциях реестра что поменять? Ведь ситуация буквально бредовая


 
Anatoly Podgoretsky ©   (2005-08-23 20:55) [5]

Еще раз, используй Юникод компоненты или настраивай региональные настройки под программу, что не всегда возможно.


 
quick_sneek   (2005-08-23 22:24) [6]

Что такое unicode компоненты? И как настраивать региональные установки из Delphi?


 
quick_sneek   (2005-08-26 07:47) [7]

Друзья!
Неужели никто так и не ответит?


 
dmitry501 ©   (2005-08-26 08:08) [8]

У пользователя, которым коннектишься к SQLSERVER укажи defaul language - Russian и используй nvachar
на ходу можно попробовать
exec sp_configure "default language", 2
reconfigure


 
Anatoly Podgoretsky ©   (2005-08-26 13:03) [9]

quick_sneek   (23.08.05 22:24) [6]
Что такое unicode компоненты?
Компоненты, которые работают с Юникод (Дельфи не работают), то есть вообще без понятия кодировка.

И как настраивать региональные установки из Delphi?
А вот это не надо делать, за это бьют и сильно. Пользователь должен сам их изменить - явно!. А то ты таких делов натворишь.



Страницы: 1 вся ветка

Текущий архив: 2005.10.09;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.041 c
2-1125652918
Андрей гость
2005-09-02 13:21
2005.10.09
база данных типа *.txt, как с ней работать


4-1123735019
ndn
2005-08-11 08:36
2005.10.09
Медленная печать на матричном принтере


14-1126797084
ArtemESC
2005-09-15 19:11
2005.10.09
ОС


2-1125049550
KyRo
2005-08-26 13:45
2005.10.09
Округлить или уменьшить число в дбгрид


2-1125672528
Гость22
2005-09-02 18:48
2005.10.09
Как сделать запись в таблицу?