[Форум] [Помощь] [Поиск] [Выйти] |
Добро пожаловать, User |
|
|
| ||
Люди, кто-нибудь работал с dbExpress в Delphi 6? Я почитал Help, там вроде как написано, что эти компоненты (SQLQuery, SQLClientDataSet и пр.) работают с данными на диске напрямую, без BDE и всего остального. Может я, конечно, чего не так понял, но вроде как получается, что с использованием этих компонентов можно сделать софтинку, работающую с таблицами и не требующую предварительной установки на машину пользователя ни BDE, ни чего-нибудь другого вообще (т.е. никаких дополнительных dll). Если кто работал с этими делами, поделитесь опытом, please. |
| ||
dbExpress - это компонента Delphi для прямого доступа (минуя BDE) к корпоративным СУБД (Oracle, DB2 и т.д.) Для работы с локальными БД без БДЕ пока никак не обойтись.:((( |
| ||
Я немного не понимаю... А что компанент ADO такого делать не может? Ведь может наверняка... А БДЕ - дрянь... |
| ||
холиварствуешь? :) а что dbf? Старый dbf просто текстовый файл, с точно определённой структурой. |
| ||
{холиварствуешь?} Не знаю я такого слова умного! :))) Но как текстовый файл читать точно неудобно - запросы делать никак... :) Опять же порекомендую ADO-компаненты. Быстро, просто и удобно. И не надо ничего на клиенствие машины дополнительного ставить, если там операционка 95ОСР или выше :) Там ADO уже встроено. И OLEDB-провайдер есть. |
| ||
Eсли использовать ADO (и требуется сделать инсталляшку) то, по-моему, без mdac_typ.exe (7,49МБ) не обойтись. Patrol>операционка 95ОСР или выше :) Там ADO уже встроено. И OLEDB-провайдер есть. Но это теоретически. Бывает что нет (может версии WIN-в идут кастраты). Да и некоторые проги при деинсталляции удаляют, что не просят. Чтобы инсталяшка получилась маленькой, по-моему, лучше использовать DAO (UseJet) - mdac не нужен (правда не знаю поддерживает ли dbf). |
| ||
Поддержка 95-й официально прекращена вообще-то ;) Пора бы и перейти хотя бы на 98-й.. ;) Он еще год жить будет ;) а мдак, действительно, ставить надо, если его нет.. Но это не значит, что его надо в инсталяшку включать. А то так придем к тому, что и винду приложить придется ;) |
| ||
Patrol>Поддержка 95-й официально прекращена вообще-то ;) Да, но у кого лицензия, сколько он её ещё продержит? Patrol>Пора бы и перейти хотя бы на 98-й.. ;) Он еще год жить будет ;) Но это не значит что у всех SE или SEx Patrol>Но это не значит, что его надо в инсталяшку включать. Если б это было так, то все уже давно бы перешли на ADO и не искали альтернативы. Тут глянул DAO поддерживает: dBASE III; dBASE IV; dBASE 5.0; Access ; Excel 3.0-8.0; Lotus 2.0-3.0; FoxPro 2.0-3.0; Paradox 3.0-5.x; Text |
| ||
Народ, можно я все-таки еще раз поинтересуюсь, а то как-то в сторону ушло обсуждение и ни одного развернутого ответа не было. Зайду с другой стороны и поставлю конкретный (и очень для меня актуальный) вопрос: Мне нужно написать на Delphi локальную (т.е. не сетевую, без использования различных серверов БД) софтинку, которая работала бы (подразумевается CREATE,SELECT,UPDATE,INSERT,DELETE) с таблицами все равно какого формата (dbf, db, ... - мне и клиенту параллельно абсолютно) с помощью SQL-запросов и команд. Что-либо устанавливать (типа BDE или InterBase) нельзя по условиям задания, т.е. программа должна работать сразу же после простого копирования на винт или прямо с CD. Предполагается, что работать с ней будут абсолютные чайники, у них даже может не быть админовских прав на машине, т.е. установить что-нибудь они не смогут по умолчанию. Насколько я понимаю в программировании, тут не обойтись без движка для моих таблиц. Мне посоветовали использовать Apollo для доступа к dbf. Она, правда, тянет за собой какие-то dll-ки, но инсталлить на клиентской машине ничего не нужно, в реестре тоже кодовать не надо. Эти dll-ки нужно просто положить рядом с экзешником. Также был совет ходить к данным через локальный MySQL (не путать с MSSQL). Там такой же подход, с dll-ками. Вопрос такой: посоветуйте, кто реально занимался такими делами, что мне использовать для работы с данными. Программа пишется на Delphi. |
| ||
Для BDE нужны эти файлы(для .db и .dbf хватает): OTHER.BTL CHARSET.CVB BANTAM.DLL BLW32.DLL IDAPI32.DLL IDBAT32.DLL IDDBAS32.DLL IDPDX32.DLL IDR20009.DLL IDSQL32.DLL (~2.3 Mb) Просто скопируй их в каталог программы, где лежит .exe, и ничего устанавливать не надо. |
| ||
Я реально занимался :) И использовал ADO. Вообще никаких DLL не надо (ну да я писал). А если у клиента винда 3.11 - то уж извините, его проблемы... |
| ||
SL, огромное спасибо, проблема только в том, что схема эта почему-то не работает. Я только что сделал тестовый проектик с одним запросиком к Paradox-таблице (*.db), положил твои файлики - все равно ругается, говорит, типа ошибка при попытке инициализации BDE (error $210C). Может, каких-нибудь еще файликов не хватает. Подскажи, плиз, если не сильно в лом, а то срочно сделать надо. |
| ||
2 LazyBear: Бегом искать faq из ru.delphi.db, там подробно написано, какие файлы нужны для работы без установки BDE. Faq постится каждую неделю. |
| ||
Возможно ты используешь Alias'ы? Надо использовать полные пути к .db как TableName, в запросах - путь в кавычках (например, 'c:ase.db'), если .db лежат в каталоге программы - можно просто имена файлов, без полного пути. (В Builder'е всё отлично работает) |
| ||
Не, я без алиасов к данным хожу, просто указываю пути к таблицам. Как выяснилось, проблема была в другом. Я ее вчера вечером все-таки решил. Просто из C:Program FilesCommon FilesBorland SharedBDE взял Other.btl, Charset.cvb и все dll-ки, которые были, без разбора, и сгрузил это все к своему exe-шнику. Завел программку - все пошло. Видимо, какой-то dll-ки не хватало до счастья. Сегодня буду разбираться, какой именно. Так что, SL, огромное спасибо за идейку и подсказку. Ее бы год назад услышать, стольких бы заморочек избежал. |