Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 Добавление записи в базу данных Access, используя ADO и SQL  [new]
MAGRAV
Member

Откуда:
Сообщений: 74
Добры день форумчане. Пытаюсь формировать небольшую базёнку в Access из источников *.CSV.
При попытке воспроизвести SQL-запрос выдаёт синтаксическую ошибку. Причём дело не в длине запроса. У меня подобный же сборник работает с другими подобными источниками и длина SQL-запроса порой превышает 1000 символов. А здесь вроде всё тоже самое, но ни в какую. Теряюсь в догадка в чем же всё таки дело?

К сообщению приложен файл (DB.rar - 126Kb) cкачать
8 фев 19, 07:13    [21803978]     Ответить | Цитировать Сообщить модератору
 Re: Добавление записи в базу данных Access, используя ADO и SQL  [new]
ПЕНСИОНЕРКА
Member

Откуда: Владимирская обл
Сообщений: 4449
MAGRAV
небольшую базёнку в Access

только вы не учли, что синтаксис кода в EXCEL и в ACCESS не одинаков
поэтому код не компилируется
8 фев 19, 07:49    [21803983]     Ответить | Цитировать Сообщить модератору
 Re: Добавление записи в базу данных Access, используя ADO и SQL  [new]
ПЕНСИОНЕРКА
Member

Откуда: Владимирская обл
Сообщений: 4449
MAGRAV,

в таблице MRX у вас задействовано служебное слово DATE
замените его на другое или заключите в квадратные скобки там, где оно применяется [date]
проверьте и другие таблицы на служебные слова
8 фев 19, 08:36    [21803995]     Ответить | Цитировать Сообщить модератору
 Re: Добавление записи в базу данных Access, используя ADO и SQL  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5671
MAGRAV
...Пытаюсь формировать небольшую базёнку в Access из источников *.CSV...
Если бы Вы еще и написали что она должна делать,какие, где и в каком виде, исходные данные,что хранить в базе. А то все как-то сложновато и не понятно (мне лично)...
8 фев 19, 10:41    [21804102]     Ответить | Цитировать Сообщить модератору
 Re: Добавление записи в базу данных Access, используя ADO и SQL  [new]
MAGRAV
Member

Откуда:
Сообщений: 74
sdku,
Моя реализация агрегатора данных в Access берёт из *.CSV - файла данные в текстовом виде с использованием именованных диапазонов. Ну и соответсвенно после не хитрого SQL-запроса должна добавить текстовые данные в соответствующие столбцы таблицы MRX.
8 фев 19, 13:01    [21804270]     Ответить | Цитировать Сообщить модератору
 Re: Добавление записи в базу данных Access, используя ADO и SQL  [new]
MAGRAV
Member

Откуда:
Сообщений: 74
ПЕНСИОНЕРКА, Спасибо за ценное замечание. После изменения имён некоторых полей, другая ошибка.
"Отсутствует значение для одного или нескольких требуемых параметров."
rst.Open "INSERT INTO " & tblName & colHead & " VALUES " & rcdDetail, cnt

colHead=" (ShortFileName,WGNAMES,DAYSIS,DATES,ROIP,RMOIP,RWIP,RGIP,RPR,RRPV, ROE,RKDIS,RWIT)"
rcdDetail="('URA_COMP_50_PERM_1_FRAC_mrx1_te', '1',NULL,'01.12.2017','1092411.625','878039.6875','418588.1875','306275808','292.353118896484','2400689.25',NULL,'0.803762672792868',NULL)"
8 фев 19, 13:31    [21804307]     Ответить | Цитировать Сообщить модератору
 Re: Добавление записи в базу данных Access, используя ADO и SQL  [new]
Озверин
Member

Откуда: Ростов-на-Дону
Сообщений: 5055
MAGRAV
ПЕНСИОНЕРКА, Спасибо за ценное замечание. После изменения имён некоторых полей, другая ошибка.
"Отсутствует значение для одного или нескольких требуемых параметров."
rst.Open "INSERT INTO " & tblName & colHead & " VALUES " & rcdDetail, cnt

colHead=" (ShortFileName,WGNAMES,DAYSIS,DATES,ROIP,RMOIP,RWIP,RGIP,RPR,RRPV, ROE,RKDIS,RWIT)"
rcdDetail="('URA_COMP_50_PERM_1_FRAC_mrx1_te', '1',NULL,'01.12.2017','1092411.625','878039.6875','418588.1875','306275808','292.353118896484','2400689.25',NULL,'0.803762672792868',NULL)"


выведите весь запрос в отладке через
?"INSERT INTO " & tblName & colHead & " VALUES " & rcdDetail, cnt

а потом загоните его в конструктор запросов - не мучайте людей.
8 фев 19, 13:39    [21804322]     Ответить | Цитировать Сообщить модератору
 Re: Добавление записи в базу данных Access, используя ADO и SQL  [new]
Кривцов Анатолий
Member

Откуда:
Сообщений: 211
MAGRAV
После изменения имён некоторых полей, другая ошибка.
"Отсутствует значение для одного или нескольких требуемых параметров."
colHead=" (ShortFileName,WGNAMES,DAYSIS,DATES,ROIP,RMOIP,RWIP,RGIP,RPR,RRPV, ROE,RKDIS,RWIT)"
В ваших таблицах нет поля DATES, есть DATE. Видимо в этом и грабли.
Кстати, а зачем у вас в таблицах все поля МЕМО?
Вместо запроса INSERT INTO ... VALUES ... лучше открыть Recordset на нужной таблице и добавить запись туда. Это и проще, и надежней, и наглядней.
А вообще, вы с кодом сильно намудрили. CSV, это текстовый файл. Его можно читать построчно, строки, начиная с 4-й преобразовывать в массив элементов функцией Split и оттуда добавлять в Recordset.
8 фев 19, 14:26    [21804380]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить