Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.25;
Скачать: CL | DM;

Вниз

из txt файла в Access (синтаксис SQL запроса)   Найти похожие ветки 

 
koreshok   (2003-09-02 19:03) [0]

есть текстовый файл, есть БД Access.
пытаюсь вставить все записи из текстового файла в БД. делаю это так
ADOQuery2.SQL.Add("INSERT INTO MainTable(Source, Dest, Bytes, Packet) IN """+st+"""");
ADOQuery2.SQL.Add(" SELECT Source, Dest, Bytes, Packet FROM ""logWcvs"""); // st - это файл с БД Access

ADOConnection2.ConnectionString - указывает на тектовый дривер Микрософт.
вылетает ошибка
"[Microsoft][ODBC text driver] syntax error in query. Incomplete query clause"
что пишу не так ?


 
kuchumovkv ©   (2003-09-02 19:12) [1]

Для начала попробуй узнать, в какой строке ошибка. И, MainTable - это в mdb, как понял, а что такое logWcvs?


 
koreshok   (2003-09-02 19:18) [2]


> Для начала попробуй узнать, в какой строке ошибка

а как это сделать?
[Microsoft][ODBC text driver] он знает только путь к "типа" БД, и знает расширения файлов, которые являются его таблицами. (по крайней мере я так понял), так вот logWcvs - это есть файл logWcvs.txt. в файле DSN указан путь к базе и расширение таблиц TXT, т.е. logWcvs это и есть текстовая таблица.


 
kuchumovkv ©   (2003-09-02 19:40) [3]

К сожалению, не знаком с ньюансами систаксиса SQL для [ODBC text driver], а их для каждых дров более чем предостаточно, намучался с дровами для дбф-ок.
SELECT Source, Dest, Bytes, Packet FROM ""logWcvs"" как понимаю образует рекордсет для вставки в mdb, попробуй выполнить сначала его отдельно, без инсерта, так и узнаешь, в какой части глюк (я уверен, что именно в нем).
Второе, может вместо ""logWcvs"" - """logWcvs""", структура конструкции наводит на такое размышление, или """ вместо """, но это уже голые предположения, хотя зачастую такой метод приводит к результату. Лучше, конечно, хелп перед глазами.


 
koreshok   (2003-09-02 19:48) [4]


> Лучше, конечно, хелп перед глазами

а где взять эти самые "ньюансы"?
ошибка и точно в SELECT, но таже самая:(


 
kuchumovkv ©   (2003-09-02 19:58) [5]

Это точно ошибка синтаксиса! А без шуток, "ньюансы", как показывает опыт, познаются методом проб и ошибок. SQL только кажется универсальным. Исчерпывающей документации ни по одним дровам не видел.

Кстати, где ты взял именно такую форму синтаксиса? Пошукай там, может что и бросится в глаза.

Попробуй выполнять запрос в явном виде (имя файла "z:\jjj.txt", напр, и т.д., апострофы, опять же), "select * ..." и т.д. Удачи.


 
sniknik ©   (2003-09-02 20:38) [6]

можно узнать в JETSQL40.CHM если найдеш на своей машине, но это только из Access базы (mdb) подключенном через Jet можно текст вкачать, обратной ситуации типа (из текста) доступа к "верхним" (Access, MsSql) базам нет.
т.е. надо из Access доступ к txt делать.


 
koreshok   (2003-09-02 20:39) [7]

ошибку нашел
ADOQuery2.SQL.Add("INSERT INTO MainTable(Source, Dest, Bytes, Packet) IN """+st+"""");
ADOQuery2.SQL.Add("SELECT logWcvs.Source, logWcvs.Dest, logWcvs.Bytes, logWcvs.Packet FROM logWcvs.txt logWcvs");


просто открыл Microsoft Query, мастером создал запрос и посмотрел синтаксис (оказывается иногда думать полезно)


 
koreshok   (2003-09-02 20:49) [8]

2 sniknik оказывается можно и из тхт а Аксес загнать:) у меня получилось.


 
sniknik ©   (2003-09-02 21:31) [9]

koreshok (02.09.03 20:49) [8]
хочеш сказать у тебя основное подключение к тексту, и из него к Access базе обращение? покажи.


 
sniknik ©   (2003-09-02 21:45) [10]

а впрочем не надо, действительно получилось
коннект к тексту
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\;Extended Properties= Text;Persist Security Info=False
запрос
SELECT * INTO Box123 IN "D:\Base.mdb" FROM BOX#TXT

оказывается можно а я просто не пробовал.



Страницы: 1 вся ветка

Текущий архив: 2003.09.25;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.026 c
3-82094
Фикус
2003-09-04 14:56
2003.09.25
dbf -> interbase


3-82073
Centurion
2003-09-05 14:29
2003.09.25
Ошибка БД


14-82439
Некрофил-затейник__
2003-09-08 09:01
2003.09.25
Человеки помогите найти!


1-82251
AHTOH
2003-09-14 22:19
2003.09.25
Стандартное меню для TEdit в виндах


14-82405
Belkova
2003-09-04 19:59
2003.09.25
Быстродействие приложения