Foros del Web » Programando para Internet » ASP Clásico »

Exportar Excel A Mysql

Estas en el tema de Exportar Excel A Mysql en el foro de ASP Clásico en Foros del Web. Hola a todos! soy nueva en este foro y me he inscrito para solicitar su amable ayuda. Sucede que tengo un archivo hecho en asp ...
  #1 (permalink)  
Antiguo 17/12/2007, 15:41
Avatar de allymcby  
Fecha de Ingreso: diciembre-2007
Ubicación: MEXICO
Mensajes: 1
Antigüedad: 16 años, 5 meses
Puntos: 0
Exportar Excel A Mysql

Hola a todos!
soy nueva en este foro y me he inscrito para solicitar su amable ayuda.

Sucede que tengo un archivo hecho en asp para subir informacion a una tabla de mysql... mi script funcionaba correctamente, solo que ahora por mas que intento ver donde esta el error, me pone el mensaje

Cita:
Select * From A1:I140
Microsoft OLE DB Provider for ODBC Drivers error '80040e21'

El controlador ODBC no admite las propiedades solicitadas.

Entonces no se que pueda estar mal en el codigo... se los copio aqui abajo para que me puedan dar su opinion. Mil gracias por su atencion!

Liga para ponerle los parametros:
www.tudominio.com/ExcelsubirTabla.asp?Archivo=ClientesNuevos.xls&Col umnas=112&Tabla=clientes&iNICIO=A1&FIN=DH2

Código:
<html>
<head>
<title>Subir Excel</title>
</head>
<%
Server.ScriptTimeout=100000

'Asigna a la variable Patd, la ruta del archivo *.xls'
strNomArchivo = REQUEST.QUERYSTRING("ARCHIVO")
intColumnas   = REQUEST.QUERYSTRING("Columnas")
strTabla      = REQUEST.QUERYSTRING("Tabla")
strHoja       = REQUEST.QUERYSTRING("Hoja")
'strCampoLLave1= REQUEST.QUERYSTRING("CampoLLave1")'
'strCampoLLave2= REQUEST.QUERYSTRING("CampoLLave2")'
strTipoCampo1 = REQUEST.QUERYSTRING("TipoCampo1")
strTipoCampo2 = REQUEST.QUERYSTRING("TipoCampo2")
strInicio     = REQUEST.QUERYSTRING("Inicio")
strFin         = REQUEST.QUERYSTRING("Fin")
Path=Server.MapPath(strNomArchivo)
'---CONDICIÓN'
'if strTipoCampo1 = "1" then strTipoCampo1 = " "'
'if strTipoCampo1 = "2" then strTipoCampo1 = "'"'
'if strTipoCampo2 = "1" then strTipoCampo2 = " "'
'if strTipoCampo2 = "2" then strTipoCampo2 = "'"'

'Establece una conexión entre el servidor asp y una base de datos'
Set ConexionBDExcel = Server.CreateObject("ADODB.Connection")

'Abrimos el objeto con el driver específico para Microsoft Excel'
ConexionBDExcel.MODE = 3
ConexionBDExcel.Open ("DRIVER={Microsoft Excel Driver (*.xls)};DBQ=" & Path)

'Crea un objeto de tipo recordset para retornar la consulta sql'
Set rsVac = Server.CreateObject("ADODB.Recordset")

'Se abre el recordset, señalando como tabla el rango de celdas Excel llamado Feriado.'
'Este nombre de rango se debe definir en MSExcel (>Insertar>Nombre>Definir...).'
response.Write("Select * From "&strInicio&":"&strFin&"")
response.flush
rsVac.Open "Select * From "&strInicio&":"&strFin&"", ConexionBDExcel,3,3

%>

<body>
<h2><b><center>INSERTAR REGISTROS A LA BD</center></b></h2>
<hr>
<table border=1 align="center">
<%
'Nos posicionamos al principio del recordset, por cualquier cosa'
rsVac.MoveFirst
 Response.Write rsVac.Fields.Count-1'
Response.Write "<tr>"
FOR i=0  TO rsVac.Fields.Count-1
  Response.Write("<td>" & rsVac.FIELDS(I).NAME & "</td>")
NEXT
Response.Write "</tr>"
%><!--#include file="includes/Conexion.INC" --><%

'Y por último, el cuerpo de los datos'
Do While Not rsVac.EOF

  '--LISTA DE CAMPOS'
  WCampo1 = TRIM(rsVac.FIELDS(0).value)
  if left(WCampo1,1)="'" then WCampo1 = right(WCampo1,len(WCampo1)-1)
  'LO SIGUIENTE ESTABA COMENTADO LO VAMOS A DESCOMENTAR PARA VER QUE HACE
   Response.Write "<tr>"
   Response.Write(WCLAVE)
   Response.Write "</tr>"

  Response.Write "<tr>"
  FOR i=0  TO rsVac.Fields.Count-1
   Response.Write("<td>" & rsVac.FIELDS(I).value & "</td>")
  NEXT
  Response.Write "</tr>"
  '----
  strSql =""
  strSql1   =""
  strSql2   =""

  strSql = " INSERT INTO  "&strTabla&" ( "
  FOR i=0  TO rsVac.Fields.Count-1
   strSql1 = strSql1 &  rsVac.FIELDS(I).name & " ,"
  NEXT
  strSql1 = left(strSql1,len(strSql1 )-1)
  FOR I=0  TO rsVac.Fields.Count-1
      strTipo = ""
      if rsVac.FIELDS(I).type=200 then strTipo="'"
   strSql2 = strSql2 &  strTipo & rsVac.FIELDS(I).value & strTipo & " ,"

  NEXT

  strSql2 = left(strSql2,len(strSql2 )-1)
    strsql= strsql & strsql1 & ")VALUES (" & strsql2 &")"


  Response.Write "<tr>"
  Response.Write(strSql)
  Response.Write "</tr>"
  connBD.Execute(strSql)
  rsVac.MoveNext
Loop
Response.Write "</table>"

set rs = nothing
connBD.CLOSE
SET oConn = nothing

'Se cierra y se destruye el objeto recordset
rsVac.Close
Set rsVac = Nothing

'Se cierra y se destruye el objeto connection
ConexionBDExcel.Close
Set ConexionBDExcel = Nothing

%>
</body>
</html>
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 22:34.