FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Como puedo importar un csv a MYSQL
Hola,
Estoy intentando importar un archivo csv a MYSQL desde Delphi, para esto estoy utilizando el objeto SqlQuery. Cuando trato de llamar a mi query desde un botón me indica que tengo cinco errores: Checking project dependencies... Compiling Project1_ABCMysql.dproj (Debug configuration) [DCC Error] ejemplo.pas(98): E2066 Missing operator or semicolon [DCC Error] ejemplo.pas(98): E2029 'END' expected but string constant found [DCC Error] ejemplo.pas(98): E2038 Illegal character in input file: '"' (#$22) [DCC Error] ejemplo.pas(98): E2038 Illegal character in input file: '\' (#$5C) [DCC Fatal Error] Project1_ABCMysql.dpr(5): F2063 Could not compile used unit 'ejemplo.pas' El código es el siguiente:
La instrucción SQL esta bien, puesto que ya lo he ejecutado en la BD. Los errores hacen referencia a la instrucción: SqlQuery1.SQL.Text:='LOAD DATA INFILE 'c:\\irnet.csv' INTO TABLE test.irnet FIELDS TERMINATED BY ',' ENCLOSED BY '"'LINES TERMINATED BY '\n'ignore 1 lines;'; Muchas gracias por cualquier ayuda y/o sugerencia Estoy utilizando RAD Studio 2010. Alvaro Última edición por roman fecha: 01-08-2010 a las 06:16:58. |
#2
|
||||
|
||||
Hola Alvarus, bienvenido al Club.
He puesto etiquetas [delphi] a tu mensaje para que quede mejor el formato. Así puedes ver más claramente que estás formando mal la cadena de texto de la instrucción SQL: debería aparecer todo en color naranja. // Saludos |
#3
|
||||
|
||||
Roman,
Gracias por el dato, pero lo que no se, es como Delphi maneja la instrucción del archivo que quiero subir, es decir 'c:\\archivo.csv', o como puedo pasarle ese parámetro al Query para que lo ejecute. Gracias. Alvaro |
#4
|
||||
|
||||
Ya pude solucionar el problema de la cadena que hace referencia al archivo, esta debería quedar así:
Sin embargo, cuando se ejecuta la aplicación, tengo el siguiente mensaje de error: Raised exception class EDatabaseError with message 'SQLQUERY1: cursor not returned from Query'; SQLQuery1: Cursor not returned from Query Agradeceré cualquier ayuda y/o sugerencia. Gracias. Alvarus |
#5
|
||||
|
||||
#6
|
||||
|
||||
Solucionado !!!
Hola,
El problema lo solucione cambiando lo siguiente en mi código:
Estas líneas fueron cambiadas por:
Para aquel que necesite un ejemplo del código final es este:
Claro quedaría mucho mejor si pudiera enviar un mensaje que le muestre al usuario cuantos registros subió con el archivo, pero bueno supongo que son detalles que ya ire encontrando en Delphi 2010. Saludos Alvarus |
#7
|
||||
|
||||
estoy tratando de hacer algo igual pero no se mucho de SQL podrias explicar un poco la linea de SQL para entenderla mejor y gracias!
|
#8
|
||||
|
||||
Hola Alej,
Te explico lo que hice: Load data infile = le indico al programa de que archivo debe subir la informacion. Into table = indico en que base de datos y en que tabla voy a guardar los datos, recuerda la base_de_datos.tabla FIELDS TERMINATED BY '','' = Aca indico que los campos estan separados por comas en el archivo csv. ENCLOSED BY ''"''= se indica que los campos estan entre comillas. LINES TERMINATED BY ''\n'' = indico el salto de lineas, es decir comienza un nuevo registro en el archivo csv. ignore 1 lines;' = Indico que ignore la primera linea, por lo general estan los nombres de los campos. Para mayor información te recomiendo ver la documentación de MYSQL. Saludos Alvarus |
#9
|
||||
|
||||
Gracias por la respuesta, ahora bien si mi archivo no tiene comas, ni comillas como puedo aplicar tu codigo?
mi archivo esta en excel y por ende no trae campos que terminen con ',' ni encerrados en "" aun asi necesito importarlo a una base de datos en MS SQL Server utilizando como intermediario el lenguaje de programacion Delphi 7. Podrias ayudarme o si sabes de algun manual, pagina web para orientarme te lo agradeceria mucho.! |
#10
|
||||
|
||||
Cita:
// Saludos |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Como puedo conectar delphi6+MySQL 5.0.26 | comba | MySQL | 7 | 10-03-2008 12:37:32 |
PHP: Importar / Exportar Mysql | dmassive | PHP | 5 | 21-01-2006 02:16:25 |
como puedo restaurar un archivo .sql a una base de datos en mysql por delphi | Shidalis | Varios | 8 | 18-08-2005 22:24:14 |
Como puedo mostrar una lista de bases de datos en un servidor MySQL con Zeos? | guillote | MySQL | 0 | 27-07-2004 04:32:20 |
Importar Base_Datos a MySql | joselitros | MySQL | 2 | 19-05-2004 04:37:33 |
|