Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.10.17;
Скачать: [xml.tar.bz2];

Вниз

Программный импорт в 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.035 c
1-1096382476
Antonmm2
2004-09-28 18:41
2004.10.17
Функции


1-1096299900
Руслана
2004-09-27 19:45
2004.10.17
Подскажите пожалуйста как преобразовать массив байт


1-1096867757
_Дельфин_
2004-10-04 09:29
2004.10.17
Создание приложений


3-1095420833
Ceval
2004-09-17 15:33
2004.10.17
как организовать фильтрацию по полям Character и Numeric


14-1096546849
SBV
2004-09-30 16:20
2004.10.17
Помогите найти компонент





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский