Работа с базами данных в Delphi с помощью ADO (исходники)Источник: delphisources
По многочисленным просьбам посетителей решил написать краткое (возможно, даже чересчур) руководство по использованию компонентов ADO. В этой статье только самый минимум сведений, "чтоб работало"... Короче, сразу приступим. Берем Microsoft Office Access 2007, делаем базу данных (этот процесс я описывать не буду, так как, во-первых, каждый умеет, а во-вторых, у меня нет Accessa :). Итак, ставим на форму компонент ADOConnection с вкладки ADO палитры компонентов, дважды кликаем по свойству ConnectionString появляется окно 'Form1.ADOConnection1 ConnectionString', выбираем второй вариант (Use Connection String) и нажимаем кнопку Build... Далее выбираем из появившегося списка 'Microsoft Jet 4.0 OLE DB Provider' и переходим на вкладку Подключение. Там вводим путь к нашей базе данных, пользователя и пароль не трогаем (если, конечно, база данных не защищена, а если защищена (был такой опыт), все равно не срабатывает, а говорит, что пароль неверный, но это все лишний гемморой, так что не ставьте пароль просто) и нажимаем Проверить подключение. Если все отлично, то закрываем эти все окна кнопками ОК и идем дальше. Вторым действием мы ставим на нашу форму компонент ADOTable с той же вкладки, в свойстве Connection указываем наш ADOConnection1 (можно просто выбрать из выпадающего списка), а теперь дважды кликнем по свойству TableName и должно появиться окно 'Database Login': - оставляем его пустым и жмем ОК, если все и впрямь ОК, то в выпадающем списке появится список таблиц нашей базы данных (а свойство Connected компонента ADOConnection1 должно стать True). Выбираем таблицу, которую нам необходимо вывести (обратите внимание, что для вывода каждой таблицы необходим отдельный компонент ADOTable, но ADOConnection для всех один!). Теперь устанавливаем на форму компонент DataSource со вкладки Data Access. Свойство DataSet этого компонента меняем на ADOTable1 (опять выпадающий список). Ну и наконец, ставим DBGrid с вкладки Data Controls и свойству DataSource присваиваем значение DataSource1.
Примечание 1: Учтите, что иногда при изменениях свойств некоторых компонентов свойство Active автоматом сбрасывается в False, поэтому не забывайте потом опять присваивать ему True. |