powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Ошибка при вставке в таблицу на прилинкованном Оракл-сервере
4 сообщений из 4, страница 1 из 1
Ошибка при вставке в таблицу на прилинкованном Оракл-сервере
    #39991898
Sp999
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго времени суток всем!
Есть два сервера: один MSSQL, другой Oracle. Оракловый добавлен к мсскульному в линкованные сервера.
Делается такой запрос на вставку:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
declare @ImportID int

select @ImportID = (select ID from openquery([fis-dev], 'select SEQ_IMPORT_PROCESS_ID.NEXTVAL as ID from dual'));
select @ImportID;
insert openquery([fis-dev], 'select TABLE_NAME, DATE_BEGIN, PROCESS, ID from IMPORT_PROCESS')
select TABLE_NAME = N'CREDIT'
        ,DATE_BEGIN = getdate()
        ,PROCESS = 1
        ,ID = @ImportID
select 'after 1 insert';
select @ImportID = (select ID from openquery([fis-dev], N'select SEQ_IMPORT_PROCESS_ID.NEXTVAL as ID from dual'));
select @ImportID;
insert openquery([fis-dev], N'select TABLE_NAME, DATE_BEGIN, PROCESS, ID from IMPORT_PROCESS')
select TABLE_NAME = N'CREDIT_COUNTER'
        ,DATE_BEGIN = getdate()
        ,PROCESS = 1
        ,ID = @ImportID
select 'after 2 insert';


Хотя запросы на вставку идентичные, первый отрабатывает, а второй падает. Вот что на выходе:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
1513
   

1 row(s) affected.
   

after 1 insert
   

1514
   

[Microsoft][ODBC SQL Server Driver][SQL Server]The OLE DB provider "OraOLEDB.Oracle" for linked server "fis-dev" supplied inconsistent metadata. An extra column was supplied during execution that was not found at compile time.(42000,7353)


Подскажите, плиз, как с этим бороться.

С уважением, Валера.
...
Рейтинг: 0 / 0
Ошибка при вставке в таблицу на прилинкованном Оракл-сервере
    #39991901
Фотография env
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Ошибка при вставке в таблицу на прилинкованном Оракл-сервере
    #39991913
Sp999
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
env,

Спасибо за информацию, попрошу админа поменять провайдера на сервере.

С уважением, Валера.
...
Рейтинг: 0 / 0
Ошибка при вставке в таблицу на прилинкованном Оракл-сервере
    #39992140
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sp999,
да проблема в дровах, но не факт, что новые (другие) Вам помогут
Я нашел два способа:
1. делать между двумя инсертами паузу. У меня было 60 секунд (видать какие-то настройки). Но я от этого отказался из-за ...
2. Добавил в строку подключения параметр OLEDB.NET=True и ошибка ушла

Строка выходит примерно такая
Код: sql
1.
EXEC master.dbo.sp_addlinkedserver @server = N'MyLinkedOracle', @srvproduct=N'OraOLEDB.Oracle', @provider=N'OraOLEDB.Oracle', @datasrc=N'MyLinkedOracle', @provstr=N'OLEDB.NET=True'
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Ошибка при вставке в таблицу на прилинкованном Оракл-сервере
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]