Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > Передача данных между базами


Автор: nicka 4.7.2003, 16:23
Допустим имеется 2 машины с базами
Надо переслать данные таблиц из 1 машины на другую, но не вручную, а с помощью написанной процедур, которая автоматизирует этот процесс

Какие предложения, everybody?

Автор: vickr 4.7.2003, 16:37
Цитата
Допустим имеется 2 машины с базами
Надо переслать данные таблиц из 1 машины на другую, но не вручную, а с помощью написанной процедур, которая автоматизирует этот процесс

И откуда ты знаешь столько вопросов? smile.gif smile.gif smile.gif

В общем, необходимо для этого подликовать один сервер на другой, тогда можно будет обращаться к объектам БД другого сервера полным именем - имя_сервера.базы_данных.владелец.таблица.

Автор: Unregistered 5.7.2003, 15:37
Во первых что такое подликоваь?
Понимаешь машины совершенно далеко друг от друга, то естьподключение между ними через модем
Так вот допустим по вечерам владелец 1 машины должен нажать на кнопочку у себя в форме и данные таблицы поедут на сервер 2 машины, процесс совершенно автоматический
То есть нужна процедура которая это сделает . Это очень трудно? Можешь помочь?
Я тут абсолютно не гугу

Автор: nicka 7.7.2003, 11:53
Что никаких идей?

Автор: nicka 7.7.2003, 12:04
Тогда я скажу

DoCmd.TransferDatabase acExport, "Microsoft Access", _
"D:\Shop.mdb", acTable, "Table1", _
"Table1"
Что подставить вместо "D:\Shop.mdb", если файл находится на другой машине, к которой доступ идет через модем?


Если же я отправляю данные из Access в SQLServer, то так
DoCmd.TransferDatabase acExport, "ODBC Database", _
"ODBC;DRIVER=SQL Server;SERVER=marica;APP=Microsoft Office XP;WSID=MARICA;DATABASE=NorthwindCS;" & _
"Trusted_Connection=Yes", acTable, "Authors", "dboAuthors"

А что записать вместо marica, если SQLServer на удаленной машине и связь с ней через модем?

И еще, когда я запустила эту команду во второй раз вышла ошибка, говорящая, что у меня там уже есть такая таблица,
но написано в инструкции: If you export to an Access database or another database, Access automatically replaces
any existing table or other object that has the same name.
Что делать?
Хотя мне то вообще лучше было бы, чтобы данные добавлялись к уже имеющимся!

HELPPPPP!!!!


Автор: vickr 7.7.2003, 14:27
Уточни - тебе нужно данные бросить из Access на SQL Server или все-таки SQL-SQL ?

Автор: nicka 7.7.2003, 16:33
Цитата
нужно данные бросить из Access на SQL Server


точно!

Разве мой код не так делает?

Автор: vickr 7.7.2003, 16:43
Попробую реализовать пару идей с соединением "дом-работа", завтра узнаем, получилось или нет. Предварительно намекну, что при удаленном соединениии можно (и нужно) вместо имени сервера ("MARICA", как я понимаю) указать IP - адрес машины, на которой установлен SQL-сервер. Модемное соединение предварительно должно быть установлено, дозвон, разумеется не будет автоматически иницииован при попытке обратиться к серверу.

Автор: nicka 8.7.2003, 10:08
Ok!
Буду ждать!

Автор: nicka 8.7.2003, 10:09
А еще зайди в мою тему про ID,
может у тебя будут каие идеи...

Автор: vickr 8.7.2003, 17:13
nicka, sorry, дома за машину было не сесть - сама-то не пробовала с IP-адресом удаленного хоста?

Автор: nicka 9.7.2003, 10:44
Цитата
сама-то не пробовала с IP-адресом удаленного хоста?


У самой то у меня даже телефона нет дома, не то что модема, так что рассчитываю на тебя

Но дело в том, что к сожалению экспорт с Access в SQLServer как ни жаль выдает ошибку, о том что такой объект в базе уже есть, не знаю как устронить эту проблему?

А с Access в Access этого не происходит, поэтому если не поможет никто придеться ставить Access на 2-ой машине

А еще дело в том, что происходит новое заполнение данных целиком, а мне надо лишь дополнение свежих данных, может есть идеи...!!!

Автор: vickr 9.7.2003, 12:37
Буду пробовать, но быстрого решения не обещаю.
ЗЫ. Кто ж заставил тебя делать такие вещие вслепую, без модемного соединения? adv/64.gif

Автор: nicka 9.7.2003, 13:53
Есть магазинов сеть,
в конце дня надо пересылать результаты торговли на главный сервер гл. бухг-ру

Вот и думай

Ведь мой подход верный, я иду по правильному пути?

Автор: nicka 11.7.2003, 09:49
vickr
Цитата
Модемное соединение предварительно должно быть установлено, дозвон, разумеется не будет автоматически иницииован при попытке обратиться к серверу.


А есть ли какая возможность чтобы этот дозвон как нибудь вызывать автоматически? И что бы какая нибудь прогрессивная сторока этот процесс отображала? Было бы здорово!
Может есть какие идеи?


Автор: vickr 11.7.2003, 23:53
На С/C++ можно было бы попробовать. В принципе, это все делается с помощью API-шных ф-й (VB их тоже может вызывать), но на C все же проще.
Взгляну на выходных.

Автор: Unregistered 14.7.2003, 10:02
Что -то все уснули что ли нигде никаких ответов!
Разъехались что ли?

Автор: nicka 14.7.2003, 11:31
Нет значит идей?

Автор: nicka 14.7.2003, 16:21
Что-то тихо тут....
А Время идеттттттттттт

Автор: nicka 15.7.2003, 09:51
vickr

Ты уже что -нибудь попробовал?
Не томи, скажи что-нибудь!

Автор: vickr 15.7.2003, 10:20
nicka, пиши в привате - такие сообщения расценят как офтопик.
Цитата
Ты уже что -нибудь попробовал

Я со вчерашнего полудня еще с работы не вылазил - дежурство.

Автор: nicka 15.7.2003, 15:40
Нет нету идей видно!

Автор: nicka 16.7.2003, 10:13
Неужели никто ничего незнает здесь!
А где все бывалые, шустрые, опытные и т. д. !!!

Автор: nicka 17.7.2003, 12:55
Что неужели никто и ничего
Ну где все проффесионалыconfused.gif

Разве это такая трудная задача или редко попадаеться вреальной жизни!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)