Форум: "Базы";
Текущий архив: 2003.06.26;
Скачать: [xml.tar.bz2];
ВнизПеренос данных из DBF в SQL SERVER Найти похожие ветки
← →
DDP1 (2003-06-03 11:36) [0]Добрый день!
Задачка такая:
есть 2 ADOConnection"а - 1 к DBF-кам, другой - к SQL SERVER"у
Нужно перенести табличку bp DBF в SQL.
Можно ли это сделать как-нибудь кроме построчного перебора DBF-ного НД и записью в SQL?
Я присваиваю Recordset одного ADOQuery другому, но данные все равно не заносятся.
Заранее спасибо.
← →
sniknik (2003-06-03 12:02) [1]можно если убрать коннект к DBF-кам, и пользоватся к SQL SERVER и его же методами (MSSQL), OPENROWSET посмотри в BOL.
(по строгому соотвеоствию условиям задачи только перебор)
← →
DDP1 (2003-06-03 12:14) [2]>sniknik © (03.06.03 12:02)
Да я так и делал сначала:
SELECT *
FROM
OpenRowset
("MSDASQL",
"Driver={Microsoft dBase Driver (*.dbf)};DBQ=D:\Load\Base\Buf",
"select KODT, NAZV, SHIF, TO_SLOT, SOOE2 from TOVAR")
но потом стала вылетать ошибка
OLE DB provider "MSDASQL" reported an error. The provider did not give any information about the error.
OLE DB error trace [OLE/DB Provider "MSDASQL" IDBInitialize::Initialize returned 0x80004005: The provider did not give any information about the error.].
Пытался с эим бороться, но не получилось, поэтому решил побробовать загружать данные через ADO.
← →
sniknik (2003-06-03 12:44) [3]думаеш лутше будет? если с одними файлами работает а с другими нет то это формат файлов виноват. (может это и не dBase)
а например Fox
попробуй к примеру
SELECT *
FROM OpenRowset("MSDASQL",
"DRIVER={Microsoft dBase VFP Driver (*.dbf)};UID=;SourceDB=d:\;SourceType=DBF;",
"select KODT, NAZV, SHIF, TO_SLOT, SOOE2 from TOVAR")
← →
DDP1 (2003-06-03 14:44) [4]Фишка в том, что сначала запрос работал, а потом ЭТОТ ЖЕ запрос перестал работать. Я поискал на sql.ru, там некотоым помогла перегрузка сервера, некоторым помогло
DBCC TRACEON(-1,7300)
Меня ни то ни другое не спасло :(
← →
DDP1 (2003-06-03 14:47) [5]Через Fox - овский драйвер вообще не работает - зависает
← →
sniknik (2003-06-03 16:09) [6]еще можно попробовать Jet (может у тебя ODBC или драйвер его "поломался") и указывать в запросах все параметры. а то в укороченном мало ли что по умолчанию вставляется. поменялись настройки в ODBC (версию обновил а там по другому) и привет.
через Jet вот так попробуй
SELECT KODT, NAZV, SHIF, TO_SLOT, SOOE2 FROM
OpenDataSource("Microsoft.Jet.OLEDB.4.0",
"Data Source="D:\Load\Base\Buf";Extended properties=dBase IV")...TOVAR
если получится а твой даже с полными параметрами не сработает то чтото у тебя с ODBC случилось.
← →
stone (2003-06-03 16:16) [7]sniknik © (03.06.03 16:09) прав, подобным образом я перегоняю от 2 до 19 млн. записей без проблем, лишь вопрос времени и производительности компа.
← →
DDP1 (2003-06-03 16:40) [8]Ничего не выходит и с JET. А как ODBC подлечить? MDAC переустановить?
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.06.26;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.028 c