Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Delphi & MS Access - как открыть и работать? [D6]


Геннадий ©   (2002-11-04 16:16:00) 

Доброго времени суток!

Есть файл базы данных MS Access. Как программно его открыть и обратиться (прочитать/записать) к значениям его полей? Будьте любезны пример в виде кусочка кода!

Для тех, кому интересно - мне это для конвертации. С Access работать мне неудобно и я хочу уже имеющиеся данные "перекинуть" в ... ну ... например, Paradox.


MsGuns   (2002-11-05 14:20:00) [1]

>Snake © (05.11.02 09:47)
>Неужели в Paradox работать лучше, чем с Access?

Не бывает СУБД без недостатков. Меня лично парит в аксесе дикие (по сравнению с парадоксом) тормоза при навигации внутри даже небольшого курсора, да и вообще он медленнее (ИМХО).

В парадоксе свой геморрой: lck-шки, перманентно летящие ключи, опять же офисного писсуара не приемлет - подавай ему биде и т.д.

А вообще кто к чему привык !


Snake   (2002-11-05 11:22:00) [2]

Кстати, с Access проще данные конывертить, хоть в тот же MSSQL


sniknik   (2002-11-05 10:11:00) [3]

Мне тоже Access привычнее и роднее :-)) хотя MSSQL круче, а с Paradox-ом связано много бессонных ночей но дело вкуса похоже.

и чаще не выбираеш, работаеш с тем чем приходится. :-(((


Snake   (2002-11-05 09:47:00) [4]

Неужели в Paradox работать лучше, чем с Access? Я как-то наоборот последнее время абсолютно все на эксесовских базах шпарю. Может быть, я не прав?


LAN   (2002-11-05 09:36:00) [5]

Была у меня именно такая задача. Я вышел из положения следующим образом:
В ODBC прописал информацию о базе, в BDE создал алиас через ODBC-шный драйвер на базу Access. В Delphi-ах выполнил подключение через алиас и работал с базой старым стандартным способом (Append, Edit, Post...) ... - все прошло нормально. Для перекачки из Access в Paradox мне этого вполне хватило.


MsGuns   (2002-11-05 00:39:00) [6]

>blackman © (04.11.02 22:56)

Дорогой, речь не идет о создании проекта действующей СУБД ! Это только трансформ и не более. А чем я его сделаю, особенно если он выполняется ОДИН раз, это не суть важно. Если я не прав, возрази !


blackman   (2002-11-04 22:56:00) [7]

>MsGuns
Ну может неверно выразился.
Bde с A2000 работать будет, но нет смысла.
Лучше через ADO.
О чем sniknik и говорит.

Ваши проги могут тискать кого угодно.
Я не против.


Геннадий   (2002-11-04 19:52:00) [8]

>> sniknik © (04.11.02 17:22)
p.s. не обрашай внимания на разные глупости ...



На глупости - не обращаем! :)

Спасибо за помощь.


MsGuns   (2002-11-04 18:17:00) [9]

blackman © (04.11.02 17:15)
>MsGuns
>BDE только для 97.
>A2000 только Ado.

Да ну ? Ну тогда все мои проги, тискающие через бде (TTable,TDataBase,TQuery) access - 2000 - это мои галлюционации...


sniknik   (2002-11-04 17:22:00) [10]

p.s. не обрашай внимания на разные глупости типа ADODataSet1.MessageDlg понятное дело ошибка.


sniknik   (2002-11-04 17:21:00) [11]

А то ж. Почему нельзя? зачем бы он тогда нужен был.

ADOConnection1.Connected:= False;
ADOConnection1.ConnectionString:= "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\MyBase.Mdb;Persist Security Info=False";

ADODataSet1.Connection:= ADOConnection1; //это лишнее лутше в десигн тайме проставить, хотя кому как
ADODataSet1.CommandText:= "SELECT * FROM MyTable";
ADODataSet1.Open;

while not ADODataSet1.Eof do begin
ADODataSet1.MessageDlg(ADODataSet1.FieldByName("MyField").AsString, mtInformation, [mbOk], 0);
ADODataSet1.Next;
end;


blackman   (2002-11-04 17:15:00) [12]

>MsGuns
BDE только для 97.
A2000 только Ado.


Геннадий   (2002-11-04 17:09:00) [13]

> sniknik ©

Точно! :)) Только ключевое поле перестало быть таковым, но в моём случае это не страшно...

> MsGuns ©

Не получилось... :(
Может я что не так делаю? Расскажи подробней.




А вообще, по сабжу, возможно обратиться к полю таблице, которая хранится в файле MS Access *.mdb ?


sniknik   (2002-11-04 16:49:00) [14]

в Access есть экспорт базы в ... ну ... например Paradox. :о))

в Access-е меню File->Export.


MsGuns   (2002-11-04 16:22:00) [15]

Для доступа к эксесу можно использовать компоненты из закладок BDE, ADO и др. Если использовать BDE, то надо TTable/TQuery/TBatchMove и TDataBase, Для ADO - TADOQuery/TADOTable и ADOConnection. Свойства и методы см. F1


Наверх

Титульная страница Поиск, карта сайта Написать письмо