Не удалось удалить запись со связанного сервера
Последние два дня я всюду искал решение своей проблемы, но безуспешно.
У меня есть этот запрос, который удаляет запись с удаленного сервера:
delete from OPENROWSET('SQLNCLI', 'Server=AB01S\SQLEXPRESS;Database=ShopData;Trusted_Connection=yes', 'Select receipt_n,action_in, action_ty, action_field_name,action_field_type,action_field_data, terminal from tblData where receipt_n= 1 and terminal = 1');
и я получаю эту ошибку:
OLE DB provider "SQLNCLI" for linked server "(null)" returned message "Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done.".
Msg 7202, Level 11, State 1
Это также предлагает использовать sp_addlinkedserver
добавить связанный сервер.
Некоторые заметки:
- Это происходит только на этом конкретном компьютере + удаленный сервер. На 2 разных станциях (компьютер + сервер) все работало просто отлично.
- Вставка в OpenRowSet работает нормально.
- Выберите * из OpenRowSet работает нормально. => Изменение удаления на * работает нормально.
- Ad hok включен на компьютере, который запрашивает
- Удаленное соединение включено на компьютере, запрашиваемом через openrowset
- Я могу пинговать сервер (AB01S)
До сих пор я пытался добавить связанные настройки через графический интерфейс и sp_addlinkserver
,
1 ответ
Я нашел проблему!
Имя сервера (по какой-то причине) было неверным.@@servername
вернул AB01S_88
Решение было следующим: запустить следующий код и затем перезапустить службу:
exec sp_dropserver @@servername
exec sp_addserver 'AB01S', local
exec sp_serveroption 'AB01S', 'data access' , 'true'