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

Вниз

Запись DBase в DOS кодировке   Найти похожие ветки 

 
Гаврила   (2004-02-19 16:02) [0]

Добрый день, уважаемые
Все было нормально до сегодняшнего дня
проверялось наличие файла DBase на диске, если его нет - записывалась пустая таблица из ресурса программы,
открывалась с помощью TAdoConnection + TAdoTable и производилась запись.
Строка подключения :
"Provider=MSDASQL.1;Persist Security Info=False;Data Source=Файлы dBASE;Extended Properties="DSN=Файлы dBASE;DBQ=X:\;DefaultDir=X:\;DriverId=277;FIL=dBase IV;MaxBufferSize=2048;PageTimeout=5;";Initial Catalog=X:\"

Сегодня были установлены StarTeam и MSSQL Server, причем первый ругался на "устаревшую версию драйверов ODBC" при установке, тем не менее к работе приступил

В результате имеем символ $3F вместо любой русской буквы после записи данных.
Как лечить ?


 
sniknik ©   (2004-02-19 16:15) [1]

откуда берутся данные и как записываются? код. что в трассировре перед записью?. вопросы при переконвертации могут получатся из юникода.


 
Гаврила   (2004-02-19 16:39) [2]

Записывается
Table.Insert;
Table.AnyField.AsString:=<Нормальное строковое значение,(переменная типа string), проверенное отладчиком>
Table.Post

Почитал соседние ветки ,провел манипуляции с
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Xbase
а также с использованием драйвера FoхPro - не помогло


 
sniknik ©   (2004-02-19 17:20) [3]

> Записывается

т.е. именно так?

Table.Insert;
Table.AnyField.AsString:= "Нормальное строковое значение, (переменная типа string)";
Table.Post;

как здесь константу? а мне кажется запишется нормально, если скомпилится конечно, "AnyField" такого метода/свойства/.. у Table нет. или уже есть?


 
Гаврила   (2004-02-19 17:29) [4]

Не поленился, проверил :-)
нормально только подстрока "string" записалась :-)
AnyField - да, это опечатка, имеется в виду поле типа TStringField (набивал прямо здесь).

В общем, ситуация пока тупиковая
толи через Excel делать (он нормально прописывает), толи прямо в файл по формату, без всяких драйверов

Самое смешное то, что у Юзера работает, а у меня нет (обычно все наоборот)


 
sniknik ©   (2004-02-19 17:46) [5]

ну раз есть уверенность что это на записи, обнови драйвер, MDAC и Jet раз уж с dbf работаеш.
кстати Excel через jet пишет.
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=X:\;Extended Properties=dBase IV;Persist Security Info=False


 
Гаврила   (2004-02-19 18:01) [6]

>>sniknik ©   (19.02.04 17:46) [5]
Или я не знаю каких-то азов, или...
Я всегда был уверен, что провайдер "Microsoft.Jet.OLEDB.4.0" предназначен для работы с базами MS Access ???


 
Гаврила   (2004-02-19 18:13) [7]

И тем не менее строка
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=X:\;Extended Properties=dBase IV;Persist Security Info=False

привела к желаемому результату
Что я могу сказать:
Во-первых, sniknik - большое спасибо
Во-вторых, я нифига не понимаю :-(((



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

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

Наверх




Память: 0.48 MB
Время: 0.024 c
3-1078075764
Wlad
2004-02-29 20:29
2004.03.28
dbgrid


8-1069034807
Asteroid
2003-11-17 05:06
2004.03.28
И опять задержки в waveOutWrite


3-1077783229
Бульбаш
2004-02-26 11:13
2004.03.28
Выборочный вывод строк в Qreport


3-1077862153
Layner
2004-02-27 09:09
2004.03.28
Как найти/удалить NULL записи в столбце типа DateTime (MS SQL)


1-1078858610
КомофОнСамый
2004-03-09 21:56
2004.03.28
почему не получается получить имя От TComponent