Ver Mensaje Individual
  #1  
Antiguo 09-01-2004
Morfo Morfo is offline
Miembro
 
Registrado: ene 2004
Posts: 12
Reputación: 0
Morfo Va por buen camino
Inserción masiva en MySQL

Hola soy nuevo en este foro pero llevo tiempo visitando este sitio y me inicio aqui con lo siguiente:

Estoy haciendo(pues no lo considero terminado) un programa en delphi 7 con M$Access y MySQL el cual exporta datos de access a MySQL.
Lo que lo hace particular es que tengo que formatear determinados campos al tipo de mysql(fechas sobre todo) y por tal motivo no es una exportación tan cruda como yo quisiera.
Total que he realize un procedimiento el cual extrae la información de access y la inserto en MySQL por medio de instrucciones SQL para MySQL por cada registro en access.
Platicando con mi hermano me comento que esto si bien funciona no es el mejor camino (ni practico) ya que me comentó acerca de los parametros que puedo usar con DBExpress para construir mi consulta una sola vez y por medio de los parametros irlos cambiando dinamicamente dentro del loop que extrae los datos de access lo que (según me dijo, lo siento aún no lo compruebo) es más rápido el rendimiento.


No hay pregunta en mi tema pero si tengo muchas dudas ya que al momento de tratar de asignar un valor al parámetro no lo recoge y me envia un error como : "No se pude convertir un valor OLEvariant a double" cuando o uso DOUBLE como tipo en ningun campo destino de MySQL.
Quizá el problema radique en que los valores de los parametros los trato de asignar así:

Query1.Params[0].Value:=ADOQuery1.Recordset.Field[0].Value;
Query1.Params[1].Value:=ADOQuery1.Recordset.Field[1].Value;
y así por el estilo.

Ya revise mis campos en MySQL pero no veo ningún impedimento.


Uffff, si bien no me urge sé que puede ser más eficaz mi exportación masiva, actualmente me tardo en exportar cerca de un millon de registros en una hora y tengo la seguridad de que podría hacerlo más rápido.

Bueno, les agradezco la atención.
Saludos.
Responder Con Cita