Имам база данни на Access, трябва да правя кодиране в бекенда, докато потребителите ще използват формуляри за актуализиране на записи. Имам поле, което е обозначено като поле YesNo. Е, когато се опитвам да параметризирам моя код, задавам parm на YesNo. Когато получа стойността, тя идва като -1 или (TRUE), както трябва. Дори се опитах да кодирам твърдо parm на (TRUE). Въпреки това, когато изразът за вмъкване се изпълни. Моят рекорд не се променя и когато го оценявам след изпълнението, стойността е 0 (False). Помогне? Мога да покажа част от кода по-късно. Но просто не разбирам, предавам правилната информация, но вмъкването просто не променя полето правилно.
Параметризиране на поле YesNo с помощта на INSERT INTO в Access VBA
comment
Моля, опитайте се да предоставите минимално възпроизводим пример. С текущата информация е много трудно да разберете какво правите.
- person Erik A   schedule 16.10.2019
comment
@ErikA благодаря ти. Така че, когато отидох да кача моя код. Намерих проблема си, декларирах пармето, но не го включих в INSERT. Имаше 22 парчета, така че предполагам, че просто съм го пропуснал.
- person dcary   schedule 16.10.2019
Отговори (1)
Това работи за мен:
Sub TestYesNo
DIM rs as Recordset
currentdb.Execute "CREATE TABLE Tbl1 (YesNoCol BIT)"
currentdb.Execute "INSERT INTO Tbl1 VALUES(-1)"
set rs=Currentdb.Openrecordset("Tbl1")
Debug.print rs!YesNoCol
rs.close
currentdb.Execute "DROP TABLE Tbl1"
End Sub
person
andarvi
schedule
16.10.2019
Намерих грешката си. Това е интересно решение.
- person dcary; 16.10.2019