Ошибка: Failed to parse the Currency Converter XML document.
$10 838.91


Ошибка: Failed to parse the Currency Converter XML document.
$2 168.66


Ошибка: Failed to parse the Currency Converter XML document.
$1 799.90


Основы работы с базами данных

Умение обращаться с файлами данных — чуть ли не одна из самых важных ступений в обучении программированию на Visual Basic! Здесь я постараюсь выложить только самые основные приёмы работы с объектом Data.

Прежде чем начать использовать базу данных её нужно сначала создать ;)!

1. Создайте стандартный проект.
2. Кликните на ToolBox«e на кнопку Data и натяните на форму так, чтобы полоска была не очень широкой и в самом низу формы.
3. Теперь создайте на форме четыре кнопки и назовите их (по порядку создания): cmdAdd, cmdDelete, cmdUpdate, cmdExit. Свойствам Caption дайте эти же имена, только без «cmd».

4. Создайте на форме три текстовых поля одинаковой длины.
5. Теперь надо связать объект Data с какой-нибудь базой данных. С какой? С той которая есть у всех владелцев VBasic»a — biblio.mdb! Активируйте объект Data и в свойствах, в DatabaseName выберите этот файл. Теперь там же, но в поле RecordSource надо выбрать раздел «Authors». Этим мы выберем только нужную часть базы данных.
6. Выделите первое текстовое поле и в свойствах, в DataSource выберите единственную в списке, созданную нами базу данных Data1, т.е. тем самым мы связываем это текстовое поле с объектом Data1. А в поле свойств DataField выберите «Au_ID». Теперь задача этого поля отображать идентификационный номер каждого автора! То же самое проделайте со следующими двумя другими полями, но в DataField вместо «Au_ID» выберите «Author» и «Year Born».


Поздравляю! Если Вы ещё этого никогда не делали, то знайте — Вы написали первую в своей жизни простенькую программку для отображения содержания базы данных!!! А теперь научимся редактировать её. Итак, главное редактирование — это занесение записей и удаление их.

7. Щёлкните два раза на кнопку Add и введите:

Private Sub cmdAdd_Click()

Data1.Recordset.AddNew

«Все поля, которые могут быть отредактированы будут очищены

»и подготовлены, поле Year Born будет установленно на 0,

«т.к. оно должно иметь какое-то значение

»поле Au_ID не будет очищено вообще, а изменено на самую

«последнюю позицию

End Sub

8. Следующая кнопка сохраняет внесённые изменения в базе данных. Сделайте двойной клик по кнопке Update и введите:

Private Sub cmdUpdate_Click()

»сохраняем ...

Data1.UpdateRecord

«без следующей строки после сохраниения в полях

»автоматически появились бы самые первые записи.

«поэтому закладке присваеваем идентификатор последней

»изменённой записи и в полях остануться ваши записи

Data1.Recordset.Bookmark = Data1.Recordset.LastModified

End Sub

9. Теперь самое лёгкое — удаление записей!!! Ведь правильно говорят — «Ломать — не строить!» :-))). Делаем двойной щелчок по кнопке Delete и вводим:

Private Sub cmdDelete_Click()

«чтобы выполнить последовательность инструкций над

»одиночным объектом Data1, не перечисляя его каждый

«раз, используем инструкцию With

With Data1.Recordset

.Delete

.MoveNext

If .EOF Then .MoveLast

End With

End Sub

10. И теперь для кнопки Exit просто введите:

Private Sub cmdExit_Click()

End

End Sub

Всё! А тепeрь Вы создали почти настоящую программу с базой данных!!!
10. Запустите проект. Нажмите на правую кнопку >. Содержание полей сменилось! Теперь нажмите на правую кнопку >|. В полях появились самые последние записи! То же самое будет происходить при нажатии на левые кнопки |< и |. Ваша запись на месте.

15. Теперь нажмите на кнопку Delete... запись исчезла! НО! В этом случае мы НЕ можем удалять записи сделанные не нами.

Ну, вот и готово! А теперь я расскажу немного о создании некотрых удобств с работой с базой данных. Например, представим себе, что Вы, просматривая нашу базу данных, заметили имя автора где-то в середине и через некоторое время должны вернуться к этой записи... Не пролистывать же нам снова окло тысячи имён!!! Для этого можно создавать так называеимые закладки!

16. создайте на форме ещё две кнопки с именами cmdMBM и cmdSMB со следующими надписями: Make the Bookmark и Show the Bookmark.

17. Теперь в разделе формы General Declarations объявите переменную, которая будет содержать идентификатор актуальной записи:

»переменная должна быть объявлена, как Variant поскольку
«значения закладки могут быть как числовые, так и строковые
Dim BM As Variant[/auote]

18. Теперь делаем двойной щелчок по кнопке cmdMBM и вводим:

Private Sub cmdMBM_Click()

»получаем идентификатор актуальной записи

BM = Data1.Recordset.Bookmark

End Sub

19. Теперь делаем двойной щелчок по кнопке cmdSBM и вводим:

Private Sub cmdSBM_Click()

«присваеваем закладке идентификатор нужной записи

Data1.Recordset.Bookmark = BM

End Sub

20. Снова запустите проект и прощёлкайте несколько записей.

21. Нажмите кнопку «Make the Bookmark». Так, теперь пролистайте ещё дальше или вернитесь, вобщем уйдите от этой записи.

22. Щёлкните на кнопку «Show the Bookmark».

В полях появились записи, на которые Вы и поставили закладку!

А теперь я расскажу немного о поисках записей в базе данных. Представьте себе, что Вам нужно найти конкретное имя автора из тысяч других... WOW!!! :-)) Представили? Ну, так вот листать — вроде совсем не интересно... Нужно воспользовать одним из способов нахождения :
FindFirst, FindLast, FindNext или FindPrevious. В следующей таблице представлены их значения:

Метод Пояснение

FindFirst Ищет первую запись в БД

FindLast Ищет последнюю запись в БД

FindNext Ищет каждую следующую запись в БД

FindPrevious Ищет предыдущую запись в БД

23. Создайте кнопку cmdFind c надписью «Find» и впишите:

Private Sub cmdFind_Click()

»у пользователя запрашивается имя автора а потом происходит

«поиск его в БД

Data1.Recordset.FindFirst «Author = »« _

& Trim(InputBox(»Введите имя автора«)) & »«»

»если запись не найдена появляется следующая надпись:

If Data1.Recordset.NoMatch Then MsgBox «Имя не найдено»

End Sub

24. Теперь запустите проект. Выищите какое-нибудь имя из БД и нажмите кнопку Find.

25. Введите имя и нажмите ОК.

Имя появилось! Чтобы искалось имя с конца БД слово FindFirst надо поменять на FindLast. А если Вы хотите проверить БД на наличие одного имени несколько раз надо применять слово FindNext и каждый раз вызывать поиск!

 

Интересное

Развертывание пакета...
Вопрос. Действительно ли пакет обновления 1 для Exchange Server 2007 выпущен только в 64-разрядной версии? А если 32-разрядная версия есть, поддерживается ли она для рабочей среды?Ответ. Тут...
Подробнее...
PHP кодировка писем
У меня часто спрашивают, как отсылать письма с помощью php в правильной кодировке: после отправки письма с русскими буквами, на почту людям приходит абракадабра.А все дело в том, что для почты у...
Подробнее...
Защита зрения от компьютера
Технический прогресс принес не только пользу человечеству, но еще и ощутимый вред здоровью людей, которые пользуются дарами цивилизации. О чем это я? Ну, конечно же, речь здесь идет о компьютерах...
Подробнее...
File Transfer Protocol:...
У меня нет выхода в Интернет, но есть доступ к почтовому ящику и возможность отсылать и получать письма. Можно ли как-нибудь скачивать из Интернета файлы, используя такой усеченный доступ? Да, вы...
Подробнее...
Эксклюзив: пять основ...
Довольно старый принцип, когда Microsoft базирует новую операционную систему на центральных приоритетах. И этот принцип вернулся. Оглядываясь назад, первоначальной основой Longhorn был Avalon...
Подробнее...
Перл для чайников от NS
Эту статью я решил написать, после того как узнал насколько сложно «врубиться» во всё, даже если у вас есть под рукой какое либо пособие по PERL. Везде, уже в самом начале, начинают ссылаться на...
Подробнее...
Выбор принтера
Дом печати: правильно выбираем домашний принтер Принтер для дома станет отличным решением, если среди ваших домочадцев есть те, кому необходима постоянная распечатка документов. Какой же домашний...
Подробнее...
Установка межсетевого...
Чтобы придать сетевому узлу достаточную степень надежности, установите одну из доступных и свободно распространяемых программ, известных под названием файрволов. А для подстраховки не мешало бы...
Подробнее...
Сертифицированные для...
Задавались ли вы вопросом, как можно узнать, совместимо ли то или иное программное обеспечение или устройство с основными возможностями Windows Vista? Вы можете легко определить такие изделия, ища...
Подробнее...
DNS — доменная система имен
domain name system (dns), что переводится на русский язык как «доменная система имен», позволяет значительно облегчить пользователям процесс работы в Интернете тем, что им уже не нужно запоминать...
Подробнее...