Как мне вставить ноль в целочисленное поле с VBA? - PullRequest
3 голосов
/ 03 ноября 2010

У меня есть MS Access ADP с бэкэндом SQL-сервера. Я хочу взять кучу значений из формы и вставить их в таблицу. Некоторые значения могут быть нулевыми. Как использовать vba для вставки нуля в целочисленное поле в таблице SQL Server?

Я пытался

"insert...values(" & nz(me.myInt, null) & ",..."

и

"insert...values(" & nz(me.myInt, "null") & ",..."

Ни сработало.

Ответы [ 3 ]

4 голосов
/ 03 ноября 2010

ЕСЛИ поле будет принимать нули, тогда просто пропустите его из списка полей, и оно получит нулевое значение. Итак, дали таблицу с именем, адресом, телефоном, делая эквивалент

INSERT table(Name, Address) VALUES('fred','Toytown')

оставит номер телефона с нулевым значением

3 голосов
/ 03 ноября 2010

Ваш второй пример выглядит хорошо

("insert ... values ​​(" & nz (me.myInt, "null") & ", ...")

, но толькоесли me.myInt - это вариант, элемент управления или поле. Если myInt - целое или длинное, то оно не может быть нулевым.

1 голос
/ 03 ноября 2010

какую ошибку вы получаете, когда запускаете свой код?

скажем, у нас есть таблица ... [test] со столбцами [id], [test] и [test 2].

Вы могли бы написать;

insert into [test] ([test], [test 2]) values ( null, null)

убедитесь, что ваша строка, в которой вы вводите команду, показывает ноль без каких-либо украшений ... без одинарных или двойных кавычек.

...