Попытка вставить DateTime.Now в поле Date / Time приводит к ошибке «Несоответствие типов данных»
Если я попытаюсь записать дату и время в запись в базе данных MS-Access простым способом, как это
cmd.CommandText = "INSERT INTO [table] ([date]) VALUES (?)";
cmd.Parameters.AddWithValue("?", DateTime.Now);
Я получаю исключение, говоря "Несоответствие типов данных в выражении критериев. "
Кто-нибудь может сказать мне, почему? Что здесь не так?
После небольшого эксперимента я обнаружил, что могу заставить его работать, если напишу
OleDbParameter parm = new OleDbParameter("?", OleDbType.Date);
parm.Value = DateTime.Now;
cmd.Parameters.Add(parm);
но делать это так кажется менее аккуратным, менее простым. Почему это необходимо? Я пропускаю что-то простое?