Возникла проблема с оператором Select * From - PullRequest
0 голосов
/ 08 февраля 2019

Я использую несвязанную форму в MS Access для:
1) выбора «места проведения мероприятия» с помощью поля со списком,
2) выбора предварительно зарегистрированных участников на событие с помощью каскадного поля со списком,
заполняя таким образом данные формы, такие как фамилия, имя и т. д. из таблицы «Участники», относящиеся к каждому месту проведения.

Это все работает ... далее я добавляю данные в четыре новых поля на основе желаемых действий участника.

Теперь мне нужно «прочитать» все данные формы и отправить их в таблицу «B» или «c» в зависимости от поля со списком, выбранного «Место проведения».Таблицы "B" и "c" имеют соответствующие поля, равные форме.Используя код ниже.Оператор IF работает нормально, но когда нажата командная кнопка, строка set rec=db.OpenRecordset("select * from " & strMytable & "") возвращает «Ошибка предложения From».Я перепробовал все, что мог придумать .... любую помощь?Заранее спасибо.Просто пытаюсь сделать эту базу данных.Впервые использую Access.Спасибо

Private Sub Command129_Click()

Dim db As Database
Dim rec As Recordset
Dim strMytable As String

Set db = CurrentDb
If Me.Combo77.Value = "Cherry Creek 2019" Then
   strMytable = "CC tourny results"
ElseIf Me.Combo77.Value = "Pueblo 2019" Then
  strMytable = "pueblo tourny results"
End If

sec rec=db.OpenRecordset("select * from " & strMytable & "")

rec.AddNew
rec("Last Name") = Me.LastName.text
rec.Update

rec.Close
db.Close

End Sub

1 Ответ

0 голосов
/ 08 февраля 2019

Имя таблицы содержит пробелы.Должны заключать имена объектов в [] в операторы SQL, когда они имеют пробелы или специальные символы.Также должно быть set вместо sec.

Set rec = db.OpenRecordset("select * from [" & strMytable & "]")

Текст является неправильным свойством, должен иметь значение Value, а поскольку значение по умолчанию для элементов управления данными, даже не нужноуказать.

rec("Last Name") = Me.LastName

Вместо кода набора записей можно просто выполнить действие INSERT.

CurrentDb.Execute "INSERT INTO [" & strMytable & "]([Last Name]) VALUES('" & Me.LastName & "')"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...