Вставить запрос в Access - PullRequest
       12

Вставить запрос в Access

1 голос
/ 21 апреля 2009

У меня сборка запросов из Visual Studio 2005. Я вставляю записи из базы данных SQL в Access.

Мой запрос

insert into i_mails
   (id,from_mails,to_mails,cc_mails,subject,body,
    anchor_level_id,attachment,forward_status ,reply_status,delete_status,        read_status, 
   received_date,response_date,
   batch,forward_score,delete_score,priority,
    is_auto_reply,parent_mail_id,case_id,time_bound) 

values (1,'a@a.com',  'a@a.com','a@a.com',  'Hi','--long html field--',
        7 , 'True' ,False,False,False,False,
        #12/12/2000 00:00:00# ,#12/12/2000 00:00:00#,
        0, '0','0',  1 , 
        'False',0,2,0)

Я получаю несоответствие типов данных в критерии выражения Ошибка ..
Не зная, где эта ошибка возникает в Query ... Пожалуйста, помогите !!

Структура базы данных Access:

Id - Номер,
from_mails - Заметка,
to_mails - Заметка,
cc_mails - Заметка,
тема - памятка,
тело - памятка,
anchor_level_id - номер,
вложение -Да \ Нет,
forward_status - Да \ Нет,
reply_status - Да \ Нет,
delete_status - Да \ Нет,
read_status - Да \ Нет,
дата получения - дата / время,
date_date - DateTime,
партия - номер,
forward_score - число, delete_score - номер,
приоритет - номер,
is_auto_reply - Да \ Нет,
parent_mail_id - номер,
case_id - номер,
time_bound - число,

Ответы [ 5 ]

4 голосов
/ 21 апреля 2009

Для is_auto_reply используйте «false» без кавычек. Кажется, это проблема

3 голосов
/ 21 апреля 2009

Заменить каждое значение нулевым (или другим «нулевым» значением). Начните с первого, затем второго (оставив первое как нулевое) и включив, пока вы не замените все значения пустыми проверять запрос после каждого изменения.

Когда запрос начинает работать, последнее значение, которое вы изменили, является тем, которое вызывает проблему.

P.S. Возможно, это не единственное неверное значение, но, используя этот метод, вы найдете все неправильно введенные значения.

Надеюсь, это поможет

1 голос
/ 21 апреля 2009

Посмотрите на данные, которые вы пытаетесь вставить в поля: Вложение и is_auto_reply Они должны быть полями с булевыми значениями, когда вы пытаетесь вставить строковые данные «True» и «False».

1 голос
/ 21 апреля 2009

трудно сказать, не зная структуру таблицы и типы данных, но по полной догадке

значения, которые вы пытаетесь вставить в received_date & response_date

неверно из-за символов # ...

попробуйте изменить их на

'12/12/2000 00:00:00' ,'12/12/2000 00:00:00' 
//i.e. Surround them with apostrophes
0 голосов
/ 21 апреля 2009

Возможно, стоит проверить, содержит ли ваше «длинное поле HTML» какие-либо проблемы с форматированием (например, содержит ли они апострофы, что будет интерпретировано как преждевременное завершение поля).

Кроме того, что говорили другие: без подробностей о структуре таблицы никто не сможет вам сильно помочь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...