![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Перенос данных [D6, Access]
АлеКс © (2003-09-05 08:29:00)
Добрый день госпада!
Помогите решить проблемку.
Получил я данные в TADOQuery из ДБФ поколдавал над ними и мне надо их перенести в таблицу Access.
Как это проще сделать?
АлеКс (2003-09-08 02:57:00) [1]
В том то все и дело что под Access все Ок (я под ним запрос и составлял а потом перенес в дельфи). А дельфи ругается.
sniknik (2003-09-05 10:49:00) [2]
АлеКс (05.09.03 09:26) [5]
> Кстати еще вопрос.
> У меня Jet ругается на SELECT INTO он не поддерживает чтоль или проблеммы с доступом.
это не вопрос, подумай сам на что тут отвечать? только так, посмотри гдетоу тебя там доступ закрыт, либо запрос[код[подключение[....]]](нужное подставить) неправильное.
АлеКс (05.09.03 09:28) [6]
> Вот запрос
вот с исходных данных и нужно начинать.
для Access запрос неправильный, попробуй то же самое на аксесовской же таблице, вряд ли пройдет.
вложенность джойнов по хелпу делается так
Операции JOIN могут быть вложенными; в таком случае используйте следующий синтаксис:
SELECT поля
FROM таблица_1 INNER JOIN
(таблица_2 INNER JOIN [( ]таблица_3
[INNER JOIN [( ]таблица_X [INNER JOIN ...)]
ON таблица_3.поле_3 оператор таблица_X.поле_X)]
ON таблица_2.поле_2 оператор таблица_3.поле_3)
ON таблица_1.поле_1 оператор таблица_2.поле_2;
Операции LEFT JOIN или RIGHT JOIN могут быть вложены в операцию INNER JOIN, но операция INNER JOIN не может быть вложена в LEFT JOIN или RIGHT JOIN.
кстати название хелпа под SQL Access-а тоже тебе давал гдето (но не помню где, повторю) JETSQL40.CHM иши у себя на машине.
(осталось выяснить еще всетаки тип таблици, и не пройдет еще пары недель, глядиш проблема будет решена :о)))
Wild River (2003-09-05 10:05:00) [3]
to АлеКс
Русский выучи, а потом Дельфи
АлеКс (2003-09-05 09:28:00) [4]
Вот запрос
SELECT t_oper_r.dtraspr, t_oper_r.summaraspr, s_korr.inn, m_budj.ubudj, s_dohod.dohod, s_korr_1.sname INTO spisok
FROM ((((t_oper_r LEFT JOIN main3 ON t_oper_r.main3=main3.link)
LEFT JOIN s_korr ON t_oper_r.korr=s_korr.link)
LEFT JOIN m_budj ON t_oper_r.budj=m_budj.link)
LEFT JOIN s_dohod ON t_oper_r.dohod=s_dohod.link)
LEFT JOIN s_korr AS s_korr_1 ON main3.imns=s_korr_1.link;
в нем все таблици присоедененные FoxPro а итоговая spisok таблица Аксесс
АлеКс (2003-09-05 09:26:00) [5]
Кстати еще вопрос.
У меня Jet ругается на SELECT INTO он не поддерживает чтоль или проблеммы с доступом.
АлеКс (2003-09-05 09:16:00) [6]
Это просто очередной вариант решения той же проблеммы.
Сначало я попробовал прилинковать к Access ДБФ таблици через ОДБС
все сработало
Затем из Делфи соединяусь с Аксесс и делаю запрос на создание таблици. Возникла проблема с кодировкой. Эту проблему решить не удалось.
Поехали дальше
Если нет возможности изменить кодировку встает вопрос получить данные и самому по каждой записи перекодировать.
Именно по этому и возникла проблема получить данные
Переконвертировать их
Занести в таблицу Аксесс.
sniknik (2003-09-05 09:04:00) [7]
> Или можно в запросе на обнавление в качасве параметра указать реально существующий DATASET.
однозначно нет, в случае их датасета/квери... только циклом позаписьно.
sniknik (2003-09-05 09:01:00) [8]проще всего в Access-е сделать импорт (заодно проверка на совместимость, с dBase/Foxpro (через что закачается)).
если програмно то запросом (его я тебе уже приводил)
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1062654683&n=1
и почему может не работать сказал, но на тип DBF ты почемуто упорно не обращаеш внимания, а начинаеш коверкать("поколдавал" ?) таблици.
АлеКс (2003-09-05 09:00:00) [9]
Или можно в запросе на обнавление в качасве параметра указать реально существующий DATASET.