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

Вниз

Программный импорт в SQL Server из Access   Найти похожие ветки 

 
AngelSaint   (2004-09-21 08:20) [0]

Доброго времени суток мастера.
Проблема в следующем - есть БД Access, в которой есть пару таблиц (по 500 с лишним тыщ записей в каждой). Нужно программно перекинуть данные из Access"а в SQL Server. У меня даже при открытии одной таблицы тачка кашляет так, что слышно в соседнем кабинете. Открываю исходный набор запросом select * from TBL_NAME. Может есть какой то способ вытаскива из исходной таблицы не все записи, а только например первые 100, потом еще 100 и т.д.? очень нужно. заранее благодарен.


 
ЮЮ ©   (2004-09-21 08:31) [1]

В Access уже есть
Сервис>Служебные программы>Мастер преобразования в формат МS SQL


 
AngelSaint   (2004-09-21 08:38) [2]

мне нужно именно программно. типа импорт\экспорт для\от клиентов


 
sniknik ©   (2004-09-21 08:48) [3]

> программно перекинуть
из подключения к MSSQL
SELECT a.* FROM OPENROWSET("Microsoft.Jet.OLEDB.4.0", "D:\MDBBase.MDB";"admin";"", TableName) AS a

(а можно и select into? insert into)

> например первые 100, потом еще 100 и т.д.?
выборка с ограничением по автоинкременту, вполне возможно (даже если часть удалилась)
но сначала посмотри сколько будет запрос делатся в отличии от твоей реализации.


 
AngelSaint   (2004-09-21 08:58) [4]

>sniknik ©   (21.09.04 08:48) [3]
из подключения к MSSQL
>SELECT a.* FROM OPENROWSET("Microsoft.Jet.OLEDB.4.0", "D:\MDBBase.MDB";"admin";"", TableName) AS a

можно про это поподробней пажалуста
или ссылку где прочесть


 
ЮЮ ©   (2004-09-21 09:09) [5]

[MS]SQL Server Book Online, естественно


 
zx ©   (2004-09-21 09:37) [6]

Linked Servers


 
AngelSaint   (2004-09-21 10:36) [7]

почему та вот такой запрос

SELECT     a.*
FROM         OPENROWSET("Microsoft.Jet.OLEDB.4.0",
                     "Password=password;User ID=user;
                     Data Source=database.mdb;Persist Security Info=True;
                     Jet OLEDB:System database=system.mdw;
                     Jet OLEDB:Database Password=123456",
                      "select * from TBL_NAME") a

в самом SQL Server выдает ошибку

Невозможно найти устанавливаемый ISAM


 
sniknik ©   (2004-09-21 10:56) [8]

потому что неправильный
Data Source, Password, User ID, ... ты взял часть из того как задаются параметры к opendatasource.
openrowset <> opendatasource
если так не видиш то хотя бы количество букв в них сосчитал. ;о))


 
AngelSaint   (2004-09-21 11:07) [9]

ну вот же синтаксис
OPENROWSET("provider_name"
   {
       "datasource";"user_id";"password"
       | "provider_string"
   },
   {
       [catalog.][schema.]object
       | "query"
   })

в provider_string я запихал данные из ADOConnection... если я не прав, то как нада правильно? у меня база защищена не только паролем на БД, но и файлом system.mdw... он распространяется с программой и не прописывается вместо пользовательского, просто лежит в каталоге проги и подцепляется когда нужно самой программой


 
Nikolay M. ©   (2004-09-21 11:11) [10]

Почему бы DTS-ом не воспользоваться? Имхо, это намного проще, чем возиться с openrowset/opendatasource.


 
sniknik ©   (2004-09-21 11:17) [11]

> если я не прав, то как нада правильно?

datasource = источник данных т.е. замени на путь+имя базы.
user_id = пользователь т.е. замени на имя юзера.
password = пароль т.е. замени на пароль
provider_string = строка от провайдера т.е. замени на на эту строку

и заметь все в разных строках, а не в одной как у тебя.
у тебя практически часть от этого
OPENDATASOURCE(provider_name, init_string)


 
AngelSaint   (2004-09-21 11:31) [12]

>Nikolay M.
а что такое DTS?


 
Nikolay M. ©   (2004-09-21 11:40) [13]


> AngelSaint   (21.09.04 11:31) [12]
> >Nikolay M.
> а что такое DTS?

Data Transformation Service. Мощный и гибкий инструмент для переноса данных.


 
AngelSaint   (2004-09-21 11:40) [14]

>Nikolay M.
где читать? если можно на русском


 
Nikolay M. ©   (2004-09-21 11:45) [15]


> AngelSaint   (21.09.04 11:40) [14]
> >Nikolay M.
> где читать? если можно на русском

Результат любого поисковика выдаст кучу ссылок.
Любите БОЛ - источник знаний.
http://www.sql.ru/articles/Publications.shtml#1-9


 
AngelSaint   (2004-09-21 14:00) [16]

Сделал через DTS. удобная и быстрая штуковина.
Всем спасибо за помощь!



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

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

Наверх




Память: 0.5 MB
Время: 0.059 c
14-1096199368
kaif
2004-09-26 15:49
2004.10.17
Любовь, как принцип совершенства или Ода любви


14-1096470940
Piter
2004-09-29 19:15
2004.10.17
Контрольная сумма SP2


11-1081438953
Delphi5.01
2004-04-08 19:42
2004.10.17
Mojet oshibka? Result:=PCheckMesh(NewPanel(AParent, EdgeStyle));


6-1092108374
Ден
2004-08-10 07:26
2004.10.17
поиск по сети


14-1096280445
Игорь Шевченко
2004-09-27 14:20
2004.10.17
Есть ли в природе книги по теории программирования ?