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


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


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


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

Умение обращаться с файлами данных — чуть ли не одна из самых важных ступений в обучении программированию на 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 и каждый раз вызывать поиск!

 

Интересное

Настройка DHCP сервера
Настройка DHCP сервера. Автоматическое распределение адресного ространства: Грамотное распределение имеющегося адресного пространства внутри локальной сети с количеством компьютеров более двадцати...
Подробнее...
Своя система голосования
Вы когда-нибудь хотели узнать мнение своих посетителей по тому или иному поводу?Например, «что Вы хотите видеть на сайте» или «нравиться ли Вам наш новый дизайн» ?Уверен, что...
Подробнее...
Запуск mergemaster для...
В статье рассматривается работа с программой mermemaster при обновлении ОС FreeBSDDisclaimer Я ни в коем разе не претендую, что установка сделана правильно, корректно, «так как надо» и...
Подробнее...
Проблемы в работе Windows...
Проблемы в работе Windows Server 2003 Terminal ServicesЕсли вы занимаетесь настройкой Windows 2003 Terminal Services, имейте в виду, что Microsoft выпустила 22 программы коррекции для известных...
Подробнее...
Скрытые опасности сетей Wi-Fi
Нет никаких свидетельств того, что беспроводное интернет-содинение негативно влияет на здоровье людей, говорят ученые.Авторы документальной телепрограммы Би-би-си «Панорама» выяснили,...
Подробнее...
Определение наличия...
По статистике, около 90% пользователей в наши дни пользуются Internet Explorer (5-й или 6-й версией). В этих браузерах Flash, как правило, уже установлен (если же нет, то, при наличии...
Подробнее...
Управление правами на...
Управление правами на доступ к данным (Information Rights Management,IRM) представляет собой стойкую технологию защиты информации на уровнефайлов. Она помогает защищать представленную в цифровом...
Подробнее...
Что выбрать: Vista x86 или...
Многие пользователи задают и себе и нам вопрос, какую редакцию Windows Vista выбрать: 32-битную или 64-битную? Что ж, попытаемся ответить на данный вопрос и определить плюсы и минусы каждого...
Подробнее...
Вся правда о тИЦ
О эти три магические буквы!!!Как же любят на форумах обсуждать эту тему. Дрожь пробирает, когда открывают новый топик, посвященный тИЦ-у.. А пробирает от того, что тема настолько заезжена и сотни...
Подробнее...
Сквозная навигация
Сквозная навигация — это система связей (гиперссылок), облегчающих движение пользователя по сайту. Речь идёт о максимально возможном переплетении данных. Кроме того, наличие такой связи...
Подробнее...