Problema al Importar desde Excel

22/10/2008 - 12:31 por Cristian Meneses | Informe spam
Buenas a todos
Quiero utilizar una variable para pasar la ruta del archivo de excel a
importar, si lo escribo normalmente sin variable me lo toma bien pero
si uso variable varchar(100) por ej y lo concateno no lo toma, que
puede ser?

SELECT * FROM OPENROWSET(
'Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=' + @XLSFile + ';HDR=Yes',
'SELECT * FROM [Hoja1$]')

Gracias de antemano, atte


Cristian Meneses

Preguntas similare

Leer las respuestas

#1 Cristian Meneses
22/10/2008 - 13:45 | Informe spam
Hola Maxi.
Gracias por tu respuesta. He probado como tu dices y ahora tengo un
error de 'no es un identificador valido'...

DECLARE @SQL VARCHAR(1000)
SET @SQL = 'INSERT INTO #AUXXLS SELECT * FROM OPENROWSET(
''Microsoft.Jet.OLEDB.4.0'',
''Excel 8.0;Database=' + @XLSFile + ';HDR=Yes'',
''SELECT * FROM [Hoja1$]'')'
EXEC @SQL

Atte


Cristian Meneses
Respuesta Responder a este mensaje
#2 Maxi Accotto
22/10/2008 - 14:12 | Informe spam
Hola, en tu caso deberias usar SQL dinamico (sp_executesql)

Debe saber que no es una tecnica muy recomendada y debe tener sus cuidados
para evitar la injection de codigo


Saludos
Maxi Accotto
Microsoft MVP en SQLServer
SQltotalconsulting
-

"Cristian Meneses" escribió en el mensaje de
noticias:
Buenas a todos
Quiero utilizar una variable para pasar la ruta del archivo de excel a
importar, si lo escribo normalmente sin variable me lo toma bien pero
si uso variable varchar(100) por ej y lo concateno no lo toma, que
puede ser?

SELECT * FROM OPENROWSET(
'Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=' + @XLSFile + ';HDR=Yes',
'SELECT * FROM [Hoja1$]')

Gracias de antemano, atte


Cristian Meneses
Respuesta Responder a este mensaje
#3 Gustavo Larriera (MVP)
22/10/2008 - 15:07 | Informe spam
Por favor inserte en su código, antes del EXEC: PRINT @sql

Muéstrenos el contenido que quedó en la variable @sql y el mensaje exacto de
error que recibió.

Gustavo Larriera, Microsoft MVP
http://www.linkedin.com/in/gustavolarriera
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Cristian Meneses" wrote:

Hola Maxi.
Gracias por tu respuesta. He probado como tu dices y ahora tengo un
error de 'no es un identificador valido'...

DECLARE @SQL VARCHAR(1000)
SET @SQL = 'INSERT INTO #AUXXLS SELECT * FROM OPENROWSET(
''Microsoft.Jet.OLEDB.4.0'',
''Excel 8.0;Database=' + @XLSFile + ';HDR=Yes'',
''SELECT * FROM [Hoja1$]'')'
EXEC @SQL

Atte


Cristian Meneses

Respuesta Responder a este mensaje
#4 Maxi Accotto
22/10/2008 - 15:20 | Informe spam
Pasame el numero de error por favor y la descripcion textual


Saludos
Maxi Accotto
Microsoft MVP en SQLServer
SQltotalconsulting
-

"Cristian Meneses" escribió en el mensaje de
noticias:
Hola Maxi.
Gracias por tu respuesta. He probado como tu dices y ahora tengo un
error de 'no es un identificador valido'...

DECLARE @SQL VARCHAR(1000)
SET @SQL = 'INSERT INTO #AUXXLS SELECT * FROM OPENROWSET(
''Microsoft.Jet.OLEDB.4.0'',
''Excel 8.0;Database=' + @XLSFile + ';HDR=Yes'',
''SELECT * FROM [Hoja1$]'')'
EXEC @SQL

Atte


Cristian Meneses
Respuesta Responder a este mensaje
#5 Cristian Meneses
22/10/2008 - 22:01 | Informe spam
Buenas tardes Gustavo / Maxi
Copio el detalle

INSERT INTO #AUXXLS SELECT * FROM OPENROWSET(
'Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:\Prueba.xls;HDR=Yes',
'SELECT * FROM [Hoja1$]')
Mens. 203, Nivel 16, Estado 2, Línea 31

Atte


Cristian Meneses
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida