Попробуйте следующее.Это работает для меня:
INSERT INTO sometable ( somedate, somethingelse )
SELECT Null AS Expr1, "foo" AS Expr2;
По сути, вы оборачиваете нулевое значение в запросе выбора и позволяете SQL выяснить, как представить его для вставки.
- РЕДАКТИРОВАТЬ-
Это ДОЛЖНО также работать:
INSERT INTO sometable ( somedate, somethingelse )
values (Null , "foo");
Но по какой-то причине этого не происходит при моей установке по умолчанию.
Вкл. Я догадываюсь, я переключил свою БДANSI-89 до ANSI-92, и метод VALUES начал работать.Я переключил его обратно на ANSI-89, и он все еще работает.Мало того, что на ЛЮБОЙ новой базе данных я создаю, теперь она также работает.Странно ... что-то в установке должно меняться (и зависать) при переключении назад и вперед, это не только ANSI-89/92.Похоже, именно поэтому мы получили разные результаты.
Вы можете переключить ocwe базы данных, перейдя в Office Logo-> Access Options-> OBJECT DESIGNERS-> QUERY DESIGN.Измените синтаксис, совместимый с SQL Server (ANSI 92), и установите флажок «Эта база данных».
Хорошо, очень странно.