powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / insert into ... select ... from ...
7 сообщений из 7, страница 1 из 1
insert into ... select ... from ...
    #33990903
Фотография aov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите пожалуйста, можно ли с драйверами vfpoledb/vfpodbc
использовать что-то подобное select into или insert into tbl1(COL1,COL2)
select col1,col2 from tbl2?
Такие конструкции не поддерживаются - или может быть там как-то
синтаксис немного другой. Или может есть всёже что-то другое дающее
подобный результат?
У меня проблемма следующего характера: мне нужно наладить
импорт/экспорт между 1С и папкой с дбфными таблицами. Причём данные
будут гоняться постоянно на автомате через установленные промежутки
времени. Т.е. только insert into ... select ... from ... может обеспечить
удовлетворительную скорость. А если сделать допустим выборку а потом
insert каждой строки по отдельности - то будет очень медленно. Ну и
возможность использовать insert from select то есть - если пользовать
jet.oledb+extended properties=dBASE IV - токо блин с русским шрифтом
получаются глюки :(. При этом все форумы забиты сообщениями, что мол
лечится это изменением в реестре ключа
HKEY_LOCAL_MACINE/SOFTWARE/Microsoft/Jet/4.0/Engines/XBase/DataCodeP
age с OEM на ANSI. Причём там же все рассказывают, что мол они так
сделали - и всё нормально заработало - а у меня нихрена :(.
Вобщем получается два возможных варианта дальнейших действий: или
лечить болезнь с кодировкой у Jet - или думать как сделать то же с
vfpoledb/vfpodbc - у которых с кодировкой проблемм нет.
Если кто-то что-то на одну из этих тем знает - помогите пожалуйста. Буду
очень благодарен.
...
Рейтинг: 0 / 0
insert into ... select ... from ...
    #33990948
-=AlexiS=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Собственно сам 9 VFP позволяет такие запросы.
а вот насчет OleDb и ODBC - нужно смотреть доку.
Но поскольку OleDb появился совместно с 9 - думаю что должно получиться
...
Рейтинг: 0 / 0
insert into ... select ... from ...
    #33991000
Фотография aov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Такие точно позволяет? У меня они не работают - токо с Jet.OLEDB - а с VFPODBC/VFPOLEDB не работают. Ну тоисть получается что вариант с этими дровами отпадает - остаётся токо с кодировкой - подругому вроде никак.
Кто чего знает про кодировку?
...
Рейтинг: 0 / 0
insert into ... select ... from ...
    #33991254
Фотография aov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да - что интересно: при попытке выполнить запрос вида insert into tbl1(c1,c2) select c1,c2 from tbl2 выдаёт сообщение об синтаксической ошибке - хотя вроде более уместным было бы сообщение по типу "не поддерживается". Может там синтаксис немного другой?
...
Рейтинг: 0 / 0
insert into ... select ... from ...
    #33991283
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ODBC от DBASE IV будет нормально работать только с кодовой страницей 866. Т.е. придется как-то ручками конвертировать текст из 1251 в 866. В FoxPro это команда CPCONVERT(), как в 1C - не знаю.

Запросы вида INSERT INTO ... SELECT ... появились только в VFP8. В младших версиях FoxPro такого не было.

ODBC драйвер для FoxPro самый свежий только для версии VFP6. Это значит, что через ODBC такие запросы точно поддерживаться не будут.

Скачай с сайта MicroSoft драйвер OLE DB для VFP9. Он такие запросы должен поддерживать.

В принципе, этот драйвер входит в поставку MDAC, кажется еще 2.6 Т.е. если установил на машине MDAC 2.6 или старше, то уже должен быть драйвер OLE DB от VFP9.
...
Рейтинг: 0 / 0
insert into ... select ... from ...
    #33991524
Фотография aov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да - vfpoledb поддерживает запросы insert into select. А я сначала что-то не так чтоли делал - или токо на vfpodbc это тестировал. Но select into не работает и на нём - хотя это мне не так важно. Короче получается что vfpoledb мне подходит. Токо один момент есть - мне jet sql роднее :). А тут сразу видна разница в синтаксисе. А где бы читануть про именно sql и всякие там функции преобразования, строковые функции, функции работы с датами и т.п. - т.к. они порядочно отличаются от jet-ных. Я пару угадал помучившись - но так я долго угадывать буду :). Какой то бы мануал чтоли найти гдето. Не вообще по программированию - а токо sql.
...
Рейтинг: 0 / 0
insert into ... select ... from ...
    #33991622
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Разработчики FoxPro проделали очень большую работу в VFP9 по приведению синтаксиса Select-SQL в соответствие со стандартом ANSI. Так что, если что-то можно сделать "по стандарту", то, скорее всего, это можно будет сделать и в VFP9.

Правда, "чистым" SQL тут не отделаешся. Все равно придется искать "вокруг". Думаю, простейший вариант - это скачать HELP по VFP9. Это файл DV_FoxHelp.chm около 10,5МБ. Правда, где он лежит в свободном доступе - не знаю. Но можно почитать справку On-Line на сайте Microsoft

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnanchor/html/vistoolsanchor.asp
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / insert into ... select ... from ...
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]