У меня проблемы с заполнением трех таблиц информацией из одной формы, которая запускает 3 строки INSERT INTO
для события On Click
в связанной форме.
У меня есть форма, которая заполняется и имеет кнопку отправки. При нажатии кнопки «Отправить» информация в форме должна заполнить 3 разные таблицы (код приведен ниже).
Таблицы Networks
, Radios
и Scans
.
Networks
имеет первичный ключ SSID
, который имеет отношение один ко многим с полем SSID
в таблице Radios
. Таблица Radios
имеет первичный ключ BSSID
, который имеет отношение один ко многим с полем BSSID
в таблице Scans
. Таблица Scans
имеет первичный ключ с именем index
, который является просто автоматическим номером, все остальные поля должны иметь возможность принимать дубликаты.
Когда отношения не повреждены, заполняется только таблица networks
; но если я удаляю эти отношения, то таблицы networks
и scans
заполняются, а таблица Radios
остается пустой.
На данный момент я не знаю, в чем проблема; кроме предположения, это связано с таблицей Radios
.
И поле формы для BSSID
, и поле BSSID
в таблице Radios
имеют маску:
AA:AA:AA:AA:AA:AA;
Первичные ключи установлены на обязательные, нулевая длина для BISSD
, индексированная (без дубликатов).
Все три таблицы пусты, поэтому я знаю, что проблема с дубликатами отсутствует.
Кроме того, если я заполняю таблицы в указанном порядке через графический интерфейс, у меня нет проблем.
Это код, который я использую, пожалуйста, помните об отношениях, которые я изложил выше. (Также обратите внимание, что если я удаляю все отношения, таблицы Networks
и Scans
будут заполняться, но таблица Radios
НЕ будет заполняться ).
CurrentDb.Execute "INSERT INTO Networks (SSID, Network, Authentication, Encryption)" & "VALUES ('" & Me.txt_SSID & "', '" & Me.cmb_NetworkType & "', '" & Me.cmb_AuthenticationType & "', '" & Me.cmb_EncryptionType & "')"
CurrentDb.Execute "INSERT INTO Radios (BSSID, SSID, [Radio Type], Channel, [Base Rate], [Other Rate])" & "VALUES ('" & Me.txt_BSSID & "', '" & Me.txt_SSID & "', '" & Me.cmb_RadioType & "', '" & Me.txt_Channel & "', '" & Me.txt_BaseRate & "', '" & Me.txt_OtherRate & "')"
CurrentDb.Execute "INSERT INTO Scans ([Scan Date], Location, BSSID, [Signal Strength])" & "VALUES ('" & Me.cmb_ScanDate & "', '" & Me.cmb_ScanLocation & "', '" & Me.txt_BSSID & "', '" & Me.txt_SignalStrength & "')"
Я ожидаю, что все три таблицы заполнят новую запись при выполнении этого кода.