Имя: Пароль:
1C
1C 7.7
v7: подключение к таблицам paradox краказябры
0 K19
 
19.08.11
19:40
подключаюсь к таблицам paradox (*.db) при помощи ADO
все хорошо но русский текст краказябры
при этом если открыть *.db например винхексом указав кодировку
ibm ascii видим русский текст

вот строка подключения

ADO = СоздатьОбьект("ADODB.Connection");          
ADO.ConnectionString = "Driver={Microsoft Paradox Driver(*.db )};DriverID=282;Fil=Paradox 4.X;DefaultDir="+Path+";Dbq="+Path+";CollatingSequence=ASCII;MaxBufferSize=2048;PageTimeout=600";
   
кто что скажет по теме?
CollatingSequence пробовал всякие варианты
1 Rie
 
19.08.11
19:42
(0) А где ты видишь эти "краказябры"?
2 K19
 
19.08.11
19:54
в сообщить
или например пишу в табл *.db
вижу крючки при чем коды некоторых символов при записи одинаковые
3 K19
 
19.08.11
19:56
или например беру первый символ из рекодсета получаю код какой то левый
4 K19
 
19.08.11
19:58
если читать писать на инглише или циферки
то все гуд и с индексами и с данными
5 smaharbA
 
19.08.11
19:59
(3) на сколько левый - пример
6 K19
 
19.08.11
20:10
запрос="INSERT INTO 22730135 (Name) VALUES('абв abc')";
   

// пример записи
запрос="INSERT INTO 22730135 (Name) VALUES('абв abc')";
Rs = СоздатьОбьект("ADODB.Recordset");
Rs.Open (запрос,ADO)  ; // в таблицу пишется абракадабра




//пример чтения
запрос="SELECT * FROM 22730135.DB"
Rs = СоздатьОбьект("ADODB.Recordset");
Rs.Open (запрос,ADO)  ; // из таблицы полудили данные
  сообщить(Rs.fields(1).value);
7 K19
 
19.08.11
20:12
накосячил чуток :) но суть понятна ?
8 K19
 
19.08.11
20:17
код буквы К русской в табл *.db 0x90
если писать К русскую в табл то получаем код 0x45
что надо сделать чтобы было 0x90 при записи
запись в строку Симв(0x90) эфекста не нает
9 K19
 
19.08.11
20:18
в общем тупик однако ну не писать же руками в файл а потом индексы пересоздавать :) ??
10 Rie
 
19.08.11
20:21
(9) А кодировка самой таблицы какая?
11 smaharbA
 
19.08.11
20:22
не помню, наверное кои7 ?
12 Астероид
 
19.08.11
20:23
кодовую страницу переключить нужно на 1251 вроде
13 K19
 
19.08.11
20:39
в винхексе нормально видно с кодировкой ibm ascii
какя это не совсем понятно
14 andrewks
 
19.08.11
21:14
15 K19
 
19.08.11
23:40
благодарю за инфу буду тестить !!
16 K19
 
22.08.11
11:39
пробовал не прижилось всо тож самое через jet не работает кодировка :(
17 K19
 
22.08.11
11:48
какие будут мысли ?
18 K19
 
22.08.11
16:29
может кто знает как BDE пользовать ?
там в админе много всяких кодировок есть
19 Mikeware
 
22.08.11
16:31
20 andrewks
 
22.08.11
16:35
(19) да я ему уже предлагал реестр править, грит, не помогло
21 K19
 
22.08.11
16:37
ага
22 K19
 
23.08.11
14:40
интересное наблюдение в табл парадокса иззменил в вин хексе тип данных с ascii на ANSI и получил русиш!!

но каким макаром записывать в табл пока не понятно
25 K19
 
23.08.11
14:53
резюмирую лекарство найдено !

смею предположить что не корректно указана кодировка символов в самой таблице *.db
было в заголовке ascii
поправил на ANSI

получил русский при чтении и записи :)

пляски с реестром результатов не давали
Всем спасибо за содействие в решении моей ситуации !!