VBA, MS Access MS Access в примерах

Запрос на Добавление записи

Задача:
    Добавить в таблицу (TableName) одну запись и задать текстовому полю (TextFieldName) этой таблицы значение = Любой Текст, причем, таблица содержит уникальный индекс по числовому полю (RecordID) которое не является счетчиком.
Примечание:
    Если вы используете имена полей с пробелами (что не рекомендуется) то имена полей в запросе должны обрамляться квадратными скобками  - [Имя Поля]

Private Sub AddNewRecord()
Dim lngID As Long
Dim var As Variant
Dim strSQL As String
On Error Resume Next
'Определяем максимально имеющиеся значение индекса
    var = DMax("RecordID", "TableName")
    If IsNull(var) Then var = 0 'на случай если запись первая

'Получаем следующие значение индексного поля
    lngID = var + 1

'Конструируем запрс
    strSQL = "INSERT INTO TableName (RecordID, TextFieldName) VALUES (" & lngID & ", 'Любой Текст')"

'Выполняем запрос = Добавляем запись
    CurrentDb.Execute strSQL
End Sub



Короче:

    strSQL = "INSERT INTO [Таблица Получатель] ( [Поле Получатель] ) " & _
            "SELECT [Поле Источник] FROM [Таблица Источник]"
    CurrentDb.Execute strSQL

Назад ToTop
L.E. 12.08.2019
Рейтинг@Mail.ru