Some times it needs to run a stored procedure from a remote server to local db server.Linked server do this job easily. If a stored procedure name PROC_A has a parameter @ID that accespts varchar, here is a way to run remote stored procedure from linked server
Declare a variable for procedure @PROCWITHPARAMETER Make the statement to run a procedure as you run normaly in local server but in a variable.set all parameters value of stored procedure.
DECLARE @ID VARCHAR(20)SET @ID = '20'
Make the statement to run a procedure as you run normaly in local server but in a variable.SET @PROCWITHPARAMETER = '''EXEC PROC_A '''''+ @ID +''''''''
Now declare a query variable that will run the proc variable, for this you need OPENQUERY statement passingthe name of linked server LINKSERV. And Variable of proc @PROCWITHPARAMETER
SET @STROPENQUERY = 'SELECT A1 FROM OPENQUERY(LINKSERVER, '+@PROCWITHPARAMETER+')'
Now you are ready to execute the sql EXEC (@STROPENQUERY )
The whole statement is here
DECLARE @PROCWITHPARAMETER VARCHAR (100)DECLARE @ID VARCHAR(20)SET @ID = '20'SET @PROCWITHPARAMETER = '''EXEC PROC_A '''''+ @ID +''''''''
DECLARE @STROPENQUERY VARCHAR(2000)SET @STROPENQUERY = 'SELECT A1FROM OPENQUERY(LINKSERVER, '+@PROCWITHPARAMETER+')'EXEC (@STROPENQUERY )
Output ---------------20
Friday, July 18, 2008
Subscribe to:
Comments (Atom)