Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Openrowset

Estas en el tema de Openrowset en el foro de SQL Server en Foros del Web. Estimados, estoy tratando de abrir una base desde mi pc usando el OPENROWSET, al parecer todo esta correcto usando el siguiente query: SELECT * FROM ...
  #1 (permalink)  
Antiguo 21/12/2011, 09:55
 
Fecha de Ingreso: enero-2010
Mensajes: 41
Antigüedad: 14 años, 3 meses
Puntos: 0
Openrowset

Estimados, estoy tratando de abrir una base desde mi pc usando el OPENROWSET, al parecer todo esta correcto usando el siguiente query:

SELECT * FROM OPENROWSET('SQLOLEDB', 'SERVIDOR';'USER';'PWD' ,
'select TOP 100 * from TABLA WHERE ID=123' )

el problema llega cuando quiero ponerlo dentro de un procedure, quiero ponerle parametro de busqueda y me sale error al momento de concatenar


create procedure prueba
@id nchar(8) as
SELECT * FROM OPENROWSET('SQLOLEDB', 'SERVIDOR';'USER';'PWD' ,
'select TOP 100 * from TABLA WHERE ID=''' + @id + ''' ' )

Mens. 102, Nivel 15, Estado 1, Línea 4
Sintaxis incorrecta cerca de '+'.


alguien me podria ayudar a resolver este problema...
  #2 (permalink)  
Antiguo 21/12/2011, 10:11
Avatar de Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 19 años, 4 meses
Puntos: 38
Respuesta: Openrowset

Lo mejor sera generar una variable en la que construyas tu comando y eso le pases al openrowset como parametro..


Saludos!
__________________
La sencillez y naturalidad son el supremo y último fin de la cultura...
--
MCTS : SQL Server 2008, .NET Framework 3.5, ASP.NET Applications.
  #3 (permalink)  
Antiguo 21/12/2011, 10:18
 
Fecha de Ingreso: enero-2010
Mensajes: 41
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Openrowset

por favor me puedes pasar un ejemplo segun lo que comente linea arriba
  #4 (permalink)  
Antiguo 21/12/2011, 10:28
 
Fecha de Ingreso: enero-2010
Mensajes: 41
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Openrowset

Cita:
Iniciado por andres95 Ver Mensaje
lo mejor sera generar una variable en la que construyas tu comando y eso le pases al openrowset como parametro..


Saludos!
como seria, me puedes pasar un ejemplo...
  #5 (permalink)  
Antiguo 21/12/2011, 12:54
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Openrowset

Supongo que:

Código SQL:
Ver original
  1. CREATE PROCEDURE prueba
  2. @id NCHAR(8) AS
  3.  
  4. ---
  5. DECLARE @SQLString VARCHAR(200)
  6. ---
  7. SET @SQLString = 'select TOP 100 * from TABLA WHERE ID=''' + @id + ''' '
  8. SELECT * FROM OPENROWSET('SQLOLEDB', 'SERVIDOR';'USER';'PWD' ,
  9. @SQLString )
__________________
MCTS Isaias Islas

Etiquetas: select, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:19.