|
|
|
Изменение данных на linked-сервере
|
|||
|---|---|---|---|
|
#18+
Создал в Enterprise Meneger linked-сервер, тип MSQL Server и указал там !!!SQL Server!!!, select работает отлично, но когда написал delete from [192.192.192.192].master.dbo.Table был выдана ошибка, SQLOLEDB не поддерживает многошагувую операцию. Тригира нет, пробовал сделать update таже история. Права доступа администратора. Возможно кто-то удалял данные на удаленных серверах и поделиться своим опытом, я же имел опыт удаления и изменения только через ODBC, заранее признателен всем за ответ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2002, 22:13 |
|
||
|
Изменение данных на linked-сервере
|
|||
|---|---|---|---|
|
#18+
меня тоже интересует вопрос: как можно полноценно работать с данными с linked серверов. а твою ситуацию я решал и решаю пока запуском sp на удаленном сервере, в которой и написаны операторы обновления, удаления. Хотя мне этот способ дико не нравится, но другого я не нашел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2002, 06:37 |
|
||
|
Изменение данных на linked-сервере
|
|||
|---|---|---|---|
|
#18+
Я использую для работы с Linked Server функцию OpenQuery. Ее можно использовать в запросах, как ТАБЛИЦУ. Например: UPDATE OPENQUERY(MyLinkedServer, 'SELECT F1,F2 FROM T1 WHERE F1 = 1') SET F2 = 2 или INSERT OPENQUERY(MyLinkedServer, 'SELECT F2 FROM T1 WHERE 1=0') VALUES (1000) Предикат 1=0, используется к операциях Insert, чтобы избежать выборки данных с удаленного сервера, что может замедлить работу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2002, 07:32 |
|
||
|
Изменение данных на linked-сервере
|
|||
|---|---|---|---|
|
#18+
2 Александр Третьяков И еще, по поводу ошибки. Попробуй создать в таблице уникальный индекс - возможно это поможет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2002, 07:37 |
|
||
|
Изменение данных на linked-сервере
|
|||
|---|---|---|---|
|
#18+
исполнил запрос delete OPENQUERY([192.168.192.192], 'SELECT * FROM master.dbo.Table WHERE coden = -1') Получил ответ Server: Msg 7320, Level 16, State 2, Line 1 Could not execute query against OLE DB provider 'SQLOLEDB'. The provider could not support a required row lookup interface. The provider indicates that conflicts occurred with other properties or requirements. [OLE/DB provider returned message: Произошли ошибки во время выполнения многошаговой операции OLE DB. По возможности, проверьте значения всех состояний OLE DB. Работа не выполнена.] Я вообще теряюсь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2002, 10:08 |
|
||
|
Изменение данных на linked-сервере
|
|||
|---|---|---|---|
|
#18+
У таблицы на linked server'е есть первичный ключ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2002, 10:15 |
|
||
|
Изменение данных на linked-сервере
|
|||
|---|---|---|---|
|
#18+
может, так:? delete OPENQUERY([192.168.192.192], 'SELECT * FROM master.dbo.Table where 0=1') WHERE coden = -1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2002, 10:37 |
|
||
|
Изменение данных на linked-сервере
|
|||
|---|---|---|---|
|
#18+
По моему, гораздо лучше использовать процедуру на связанном сервере, чем дергать его отдельными запросами, об этом и в книжках пишут , ошибка может быть из-за MS DTC, хотя не уверен. Вообще то при передачи параметров типа text и image на связанный сервер, я столкнулся с ошибкой, не помню номер... но что то с неправильным чтением памяти , которая вылечилась при установке sp2 для SQL Server'а, может здесь то же самое... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2002, 11:23 |
|
||
|
Изменение данных на linked-сервере
|
|||
|---|---|---|---|
|
#18+
Все получилось, спасибо Sash и особенно PeterG. Я создал первичний ключ на [192.168.192.192].master.dbo.Table и все заработало. Работают команды: delete OPENQUERY([192.168.192.192], 'SELECT * FROM master.dbo.Table WHERE coden = -1') и также delete from [192.168.192.192].master.dbo.Table WHERE coden = -1 Спасибо всем, Тема закрыта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2002, 11:24 |
|
||
|
Изменение данных на linked-сервере
|
|||
|---|---|---|---|
|
#18+
Наконец-то нашел, где я об этом читал. Посмотрите: http://support.microsoft.com/default.aspx?scid=kb;RU;q270119 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2002, 12:04 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32031102&tid=1822610]: |
0ms |
get settings: |
6ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
160ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 237ms |
| total: | 470ms |

| 0 / 0 |
