Подключение к БД Access через ADO, help!!!
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



Подключение к БД Access через ADO, help!!! Expand / Collapse
Автор
Сообщение
30.05.2007 14:08
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 31.05.2007 16:29
Сообщ.: 2, Visits: 2
Мне поставили задачу, нужно написать программу на VB, которая будет производить поиск введенного значения в access'овской БД (.mdb).

Ясно, что нужно использовать ADO, но я совсем новичок в программировании, помогите, пожалуйста, с материалами к ADO (для начинающих), посоветуйте пожалуйста что-нибудь.

С уважением,

Сообщ. #913762
30.05.2007 14:49
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
Надо использовать не ADO, а ADO.NET раз ты собираешься использовать VB.NET. Ссылки на примеры смотри в нашем FAQ.
Сообщ. #913763
30.05.2007 20:50
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 25.09.2007 19:42
Сообщ.: 116, Visits: 1 037
Та можно и на старом DAO решать эту задачу (особенно если надо решать быстро, располагая минимумом знаний)

1.Добавляем в проект COM-ссылку на Microsoft DAO 3.6
2.Где-то в начала программы пишем
dim dbe as new DAO.DBengine 'создаем экземпляр движка БД
dim db as DAO.Database = dbe.opendatabase("Путь_к_базе_данных") 'Открыли базу данных
dim rs as DAO.Recordset =db.TableDefs("Имя_таблицы").OpenRecordset 'Так мы открываем рекордсет для работы с таблицей.

Далее, там где надо, вставляется код для поиска записи (искать можно очень по-разному). Самый простой поиск пишется исходя из следующих сведений:

В каждый момент времени можно работать с полями только одной записи. Для перемещения по записям у объекта типа Recordset существуют методы:
.MoveFirst
.Movelast
.MoveNext
.Move

Чтобы считать значение нужного поля присваиваем некой переменной значение rs.Fields("Имя_поля").Value

Буду рад помочь еще.
Сообщ. #913768
31.05.2007 9:52
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
Hover (30.05.2007)
Та можно и на старом ADO решать эту задачу (особенно если надо решать быстро, располагая минимумом знаний)

Можно, конечно. Только на мой взгляд новичку лучше все-таки использовать ADO.NET так как она поддерживается средой разработки.

Сообщ. #913772
31.05.2007 10:12
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 25.09.2007 19:42
Сообщ.: 116, Visits: 1 037
Это плюс, но зато у ADO.Net более сложная инфраструктура... Всякие дата-адаптеры настраивать надо и т.д.
Но, соглашусь, DAO-ошибки сложнее отлавливать, т.к. там не всегда правильные и понятные сообщения об ошибках выпадают.
Но я все же рекомендую DAO, т.к. для него надо меньше знать.
Сообщ. #913773
31.05.2007 13:13


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

модератор
Last Login: 29.10.2007 14:45
Сообщ.: 1 833, Visits: 16 863
2Hover: Чего-то я не понял) Вроде пишите про ADO, а примеры приводите на DAO)
Сообщ. #913789
31.05.2007 13:45
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 25.09.2007 19:42
Сообщ.: 116, Visits: 1 037
Alexey Spirin (31.05.2007)
2Hover: Чего-то я не понял) Вроде пишите про ADO, а примеры приводите на DAO)

Ой, я всегда их путаю...
Спасибо, что заметили, ушел править предыдущие сообщения.....
Сообщ. #913791
31.05.2007 16:30
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 31.05.2007 16:29
Сообщ.: 2, Visits: 2
Большое спасибо!
Сообщ. #913798
« пред. тема | след. тема »


Эту тему читают Expand / Collapse
Посетители: 0 (0 гостей, 0 участников, 0 скрыт.участников)
Сейчас нет участников, просматривающих тему.
Модераторы: Alexey, boombastik, bazile, pl, Alexey Spirin

Время GMT +3:00, Сейчас 3:52