Sql server A, Sql server B, oracle database server C
Now,
SQL server B load data from oracle database server C to sql server B's database BB, using store procedure Load_oracle
On SQL server A,
I create link server to connect SQL server B. Then run following T-sql to load from oracle database server C to sql server B's database BB
I use following t-sql on sql server A
DECLARE @RunStoredProcSQL VARCHAR(1000);
SET @RunStoredProcSQL = 'EXEC [B].[dbo].[Load_oracle]';
EXEC (@RunStoredProcSQL) AT [B];
It is successful. Takes 5 minutes to complete store procedure Load_oracle running on sql server B.I execute sql server query window under SSMS: paste those coding and execute
However, after I createed a job under sql server agent on server A, here is screenshot.
I ran the job on Server A
I get failure message:
Executed as user: domain\user. Cannot create an instance of OLE DB provider "OraOLEDB.Oracle" for linked server "xxxx"(oracle server name). [SQLSTATE 42000] (Error 7302). The step failed.
I checked providers under linked server: no OraOlEDB.oracle .
What's the problem? and how to fix it? It is successful under sql server query windows under sql server management studio?-- I past the code and run. But fail when I run these code though sql server agent job. Why?