|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
08.04.2010, 12:44 | #41 |
Регистрация: 02.04.2010
Сообщений: 7
|
Serge_Bliznykov и ещё вопрос =)
читаю DBF через ADO, всё класно, всё по русски, но есть одна проблема - не могу добавить строку.. одна и таже ошибка - "Произошли ошибки во время выполнения многошаговой операции. Проверьте значения всех состояний". погуглил, вроже ошибка частая, но точного решения не написано... пробовал переставлять драйвера Microsoft OLE DB Provider for Visual FoxPro 8.0 - ничего не изменилось.. пробовал менять параметры соединения - безрезультатно.. что может быть? |
04.10.2010, 03:48 | #42 |
Форумчанин
Регистрация: 09.09.2008
Сообщений: 418
|
Перешел на Delphi 2010, мне требуется слить данные из dbf файла в базу GDB. Скачал TDFB для Delphi 2010, но он по русские буквы не хочет показывать. ADO и все остальное прочее использовать не хочу. Может кто встречал в сети нормально рабочий TDBF?
|
04.10.2010, 06:32 | #43 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
tarakan1983, нет и не было Delphi 2010, соответственно не могу поручиться, что выложенная версия корректно работает с русскими буквами. Но!
Прежде чем на версию пенять, Вы пробовали разобраться, что происходит? Просто я на 90% уверен, что дело именно в Вашем кривом DBF файле. Можете сделать маленький DBF файл с русскими буквами, который у Вас не читается и выложить сюда (желательно заархивировать предварительно) Если нет, то хотя бы посмотрите через любой HEX вьювер (хотя бы тем же FAR Commander'ом) 1) какая реально кодировка используется для русских букв внутри проблемного DBF. 2) ВАЖНО! Какой байт кодировки стоит в заголовке DBF (Кодовая таблица задаётся одним байтом по смещению 29 (0x1D). Чему равна величина байта по этому смещению?! 3) ну и забегая вперёд. Если в заголовке DBF файла кодировка не задана, то её можно задать принудительно в коде программы. Примерно вот так: Код:
|
04.10.2010, 08:24 | #44 | |
Форумчанин
Регистрация: 09.09.2008
Сообщений: 418
|
Цитата:
http://www.pvision.ru/download/bp/bik/bik0927.zip (288 кб). |
|
05.10.2010, 21:04 | #45 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
кодовая страница не была проставлена.
проставил правильную (DOS) кодировку. попробуйте. |
10.10.2010, 01:38 | #46 |
Форумчанин
Регистрация: 09.09.2008
Сообщений: 418
|
Прошу прощенья за долгое молчание, но не помогло.
|
10.10.2010, 09:52 | #47 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
повторюсь - нет у меня Delphi 2010, не могу проверить/пофиксить этот баг (и даже не могу потдвердить, что Вы не единственный, у кого он есть!) Вижу такие варианты решения. 1) поставить любую другую версию Delphi (можно Portable - в инете есть такое добро). 2) поставить себе MS OLE DB provider for Visual FoxPro и открывать TDBF файл через ADO 3) конвертнуть этот DBF файл во что-нибудь другое: начиная от TXT - кстати, я выкладывал тут на форуме небольшую утилитку DBF_SAVE для преобразования dbf -> txt, и заканчивая CSV, SQL, или XML Можно также загрузить этот DBF файл в MS Access и дальше через ADO работать с mdb файлом... 4) попытаться всё таки заставить работать TDBF в Delphi 2010 пока хватитит вариантов?.. |
|
10.10.2010, 13:41 | #48 |
Форумчанин
Регистрация: 09.09.2008
Сообщений: 418
|
Вариантов море. Спасибо за сочувствие.
Взял маленькую программку для работы с DBF, слил с её помощью в новый файл DBF три нужных мне поля и все получилось. Сейчас пока продолжил писать свою БД дальше, но все же потом вернусь к решению этой проблемы. Т.к. это всего лишь кусок моей программы. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Установка TDBF в Delphi 2007 | TIgor4 | Компоненты Delphi | 0 | 30.10.2009 14:04 |
Delphi 2010 | beemoto | Общие вопросы Delphi | 6 | 22.09.2009 13:57 |
Как правильно использовать компонент TDBF | SadStar | Компоненты Delphi | 0 | 27.03.2009 02:48 |
компонент TDBF | furstenberg | Компоненты Delphi | 2 | 27.03.2008 19:23 |