Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛАБОРАТОРНАЯ РАБОТА_5_2012.doc
Скачиваний:
11
Добавлен:
25.08.2019
Размер:
75.78 Кб
Скачать

6. Добавление, изменение и удаление записей

В модели DAO для изменения текущей записи используется метод Edit объекта Recordset, производятся нужные изменения и затем вызывается метод Update для сохранения изменений. Соответствующий пример приведен в листинге 4.

Листинг 4.

' Изменение записи в таблице "Предметы"

Sub Str()

Dim Db As Database, rs As Recordset

Set Db = CurrentDb

Set rs = Db.OpenRecordset("Предметы", dbOpenTable)

rs.MoveFirst

Do Until rs.EOF

If rs.Fields("Название") = "Физика" Then

rs.Edit

rs.Fields("Название") = "Электродинамика"

rs.Update

End If

rs.MoveNext

Loop

rs.Close

Db.Close

End Sub

Добавление новой записи осуществляется с помощью метода AddNew объекта Recordset. Далее присваиваются значения всем или обязательным полям и методом Update сохраняются данные. Пример программы представлен в листинге 5.

Листинг 5.

' Добавление новой записи с помощью метода AddNew

Sub CreateNewRecord()

Dim dbs As Database, rstCourse As Recordset

' Открытие базы данных

Set dbs = CurrentDb

'Создание переменной типа Recordset (набор записей), представляющей таблицу

Set rstCourse = dbs.OpenRecordset("Предметы", dbOpenTable)

' Создание новой записи

rstCourse.AddNew

' Ввод значений в поля

rstCourse!Название = "Философия"

rstCourse!Преподаватель = "Семенов А.С."

' Сохранение новой записи методом Update

rstCourse.Update

dbs.Close

End Sub

Удаление текущей записи производится методом Delete. Удаляемую запись нужно сделать текущей. Пример:

Листинг 6.

' Пример удаления записи из таблицы

Sub DeleteRecord()

Dim rs As Recordset

Set rs = CurrentDb.OpenRecordset("Предметы", dbOpenTable)

Do Until rs.EOF

If rs.Fields("Код предмета") = 6 Then

rs.Delete

End If

Loop

End Sub