![]() |
|
Модераторы: Akina |
![]()
|
|
| JustNick |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 28.11.2006 Репутация: нет Всего: нет |
Доброго времени суток!
Подскажите плз, как мне сделать insert ... select с одного сервера на другой? |
|||
|
||||
| Servena |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 251 Регистрация: 24.7.2007 Где: Днепропетровск Репутация: 10 Всего: 14 |
Интересный вопрос. В книге написано: имя_сервера.название_базы_данных.схема.таблица, например: Server.Northwind.dbo.Orders
Попробуй, если вы с сервером в одной сети. Скажешь что оно говорит. Наверное, будут проблемы с авторизацией. |
|||
|
||||
| JustNick |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 28.11.2006 Репутация: нет Всего: нет |
К сожалению, на MySQL-е не работает такая схема. Он просто ругается и все:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.`banks`' at line 1 Запрос такой: select * from server1.database1.banks; Banks - это табличка. Извиняюсь, не в тот раздел форума написала На MySQL-е нужно... Это сообщение отредактировал(а) JustNick - 1.11.2007, 18:22 |
|||
|
||||
| Servena |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 251 Регистрация: 24.7.2007 Где: Днепропетровск Репутация: 10 Всего: 14 |
А ты задавал этот вопрос на форуме МайЭсКъюЭля? Ато здесь вообщето немного другая тема.
|
|||
|
||||
| thomas |
|
|||
![]() Доцент... почти ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1385 Регистрация: 3.10.2006 Где: " Сказочное королевство" Репутация: нет Всего: 65 |
JustNick,
Привет. Молодец, поднял настроение
Давно я так не смеялся. Без обид. Насколько я знаю, в синтаксисе SQL не предусмотрено обращение к серверу. Там "канают" только наименования таблиц. А что касается серверов и баз данных то это задача приложения - соединиться с сервером, подключиться к определененой базе данных на нем. Не знаю на чем вы там пишите и что, я на пример пишу в VS, и сделал бы это так. 1. Создал соединение с одним сервером и со вторым, т.е. два отдельных обьекта sqlConnection. 2.На основе этих соединений создал бы два ДатаАдаптера. 3.Создал ДатаСет. Ну и 4. при обращении к серверам вызывал бы соответствующий ДатаАдаптер для выполнения моих sql-команд. Типа заполнил таблицу ДатаСета данными с одного сервера, что то с ними сделал и заслал их на другой сервер. Это сообщение отредактировал(а) thomas - 1.11.2007, 18:29 -------------------- Крепко жму горло, искренне ваш Thomas. (С)vingrad Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну! Проблемы негров шерифа не волнуют. |
|||
|
||||
| Servena |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 251 Регистрация: 24.7.2007 Где: Днепропетровск Репутация: 10 Всего: 14 |
||||
|
||||
| thomas |
|
|||
![]() Доцент... почти ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1385 Регистрация: 3.10.2006 Где: " Сказочное королевство" Репутация: нет Всего: 65 |
Servena,
Да какая разница какой сервер от "мелкомягких" или "мускул", SQL и там и там ОДИН. Что бы выполнить sql-команду надо по любому сначала создать соединение с сервером и бд на нем. Вот кусок кода для "мускула"
создай еще одно подключение, но уже к другому серверу и юзай его. Из sql-команды ВСЕ равно НЕ ПРОЙДЕТ. -------------------- Крепко жму горло, искренне ваш Thomas. (С)vingrad Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну! Проблемы негров шерифа не волнуют. |
|||
|
||||
| Servena |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 251 Регистрация: 24.7.2007 Где: Днепропетровск Репутация: 10 Всего: 14 |
Так, мне стало интересно уже очень. В книге же написано, что можно с Аналайзера.
Сейчас буду искать как. Нужно выяснить - возможно или нет. Хотя проблема с авторизацией очевидна. |
|||
|
||||
| JustNick |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 28.11.2006 Репутация: нет Всего: нет |
На самом деле пишу хранимую процедуру на MySQL-е и хочу пользоваться средствами только MySQL. Приятно людей порадовать, конечно. Но даже при таком простом запросе один сервер не видит другого. А какие команды использовать для установки соединения с другим сервером и получения оттуда данных - мне неизвестно. Это и спрашиваю |
|||
|
||||
| thomas |
|
|||
![]() Доцент... почти ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1385 Регистрация: 3.10.2006 Где: " Сказочное королевство" Репутация: нет Всего: 65 |
JustNick,
А как он по вашему должен его видеть? Что бы видеть другой сервер, нужно знать его адрес и имя. Чтобы обратиться к бд на сервере нужно с ним установить соединение. Средства SQL таких возможностей не предоставляют. Хранимые же процедуры опрерируют средствами sql. Можно ли в "мускулу" писать функции? Если да, то пиши функцию соединения с другим сервером и обращайся к ней из своей хранимой процедуры. Но опять же стоит вопрос, а могут ли подобные действия выполнять функции? В VS для этих целей существуют целые пространства имен и системных классов. Кстати я сомневаюсь что и из MS SQL можно такое провернуть. А вот из приложения работающего с бд сервера можно. -------------------- Крепко жму горло, искренне ваш Thomas. (С)vingrad Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну! Проблемы негров шерифа не волнуют. |
|||
|
||||
| Servena |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 251 Регистрация: 24.7.2007 Где: Днепропетровск Репутация: 10 Всего: 14 |
Есть. В MS SQL это возможно.
Вот запрос:
Здесь используется полное имя к таблице. Но чтобы этот запрос выполнился, нужно с помошью системной хранимой процедуры sp_addlinkedserver добавить всю необходимую информацию о удаленном сервере. |
|||
|
||||
| JustNick |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 28.11.2006 Репутация: нет Всего: нет |
Умные люди подсказали, что можно приконнектить табличку из другого сервера средствами MySQL с помощью создания таблицы с Engine = Federated.
Кому интересно, можно почитать: http://dev.mysql.com/doc/refman/5.1/en/fed...connection.html Всем спасибо большое Это сообщение отредактировал(а) JustNick - 2.11.2007, 00:20 |
|||
|
||||
![]()
|
| Правила форума "MS SQL" | |
|
|
Запрещается! Публиковать ссылки и обсуждать взлом чего бы то ни было.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, Akina. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MS SQL Server | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |