Попытка обновить таблицу с помощью запроса UPDATE, который он получает из разных наборов записей. Один запрос UPDATE запускает и обновляет записи, но другой выполняется, не обновляет записи и не выдает никакой ошибки в случае возникновения проблемы. Я подозреваю, что это где-то в предложении WHERE, но не могу точно определить.
Я играл с кавычками, но не повезло, и это то, где меня больше всего смущает. Одиночные, двойные кавычки и символ &
меня немного смущают.
extArea_SQL = "SELECT * FROM Area;"
Set rsArea = CurrentDb.OpenRecordset(extArea_SQL, dbOpenDynaset)
extDiscipline_SQL = "SELECT * FROM Disciplines;"
Set rsDisp = CurrentDb.OpenRecordset(extDiscipline_SQL, dbOpenDynaset)
instAreaName_SQL = "UPDATE ReportGen SET ReportGen.AreaName = '" & rsArea.Fields("AreaName") & "' WHERE ReportGen.AreaID = '" & rsArea.Fields("AreaID") & "';"
updtDispName_SQL = "UPDATE ReportGen SET ReportGen.DisciplineName = '" & rsDisp.Fields("DisciplineName") & "' WHERE ReportGen.DisciplineID = '" & rsDisp.Fields("DisciplineID") & "';"
db.Execute instAreaName_SQL, dbFailOnError
db.Execute updtDispName_SQL, dbFailOnError
Я также хотел бы отметить, что данные AreaName и Discipline являются строковыми и имеют специальные символы, такие как -,()/
и т. Д. .
Не уверен, что я делаю неправильно с нижним (updtDispName_SQL) запросом UPDATE, где, как и выше, работает без проблем. Я скопировал и вставил формат одного работающего и внес изменения в нижний, но все еще не могу указать.
Кто-нибудь может указать на то, что мне здесь не хватает?