used - load data infile txt mysql
Importar CSV a MySQL (3)
He creado una base de datos y una tabla. También he creado todos los campos que necesitaré. He creado 46 campos, incluyendo uno que es mi ID para la fila. El CSV no contiene el campo ID, ni contiene los encabezados de las columnas. Soy nuevo en todo esto, pero he estado tratando de resolver esto. No estoy aquí siendo perezoso pidiendo la respuesta, sino buscando direcciones.
Estoy tratando de averiguar cómo importar el CSV pero que comience a importar datos a partir del segundo campo, ya que espero que el auto_increment rellene el campo de ID, que es el primer campo que creé.
Intenté estas instrucciones sin suerte. ¿Alguien puede ofrecer alguna idea?
- Los nombres de columna de su archivo CSV deben coincidir con los de su tabla
- Busque su archivo .csv requerido
- Seleccione CSV usando las opciones de CARGAR DATOS
- Marque la casilla ''ON'' para Reemplazar datos de tabla con archivo
- En los campos terminados por el cuadro, escriba
,
- En los campos encerrados por el cuadro,
"
- En los campos escapados por caja,
/
- En líneas terminadas por caja,
auto
- En el cuadro Nombres de columna , escriba el nombre de la columna separado por
,
comocolumn1,column2,column3
- Marque la casilla ON para usar la palabra clave LOCAL .
Editar:
El archivo CSV es de 32.4kb
La primera fila de mi CSV es:
Test Advertiser,23906032166,119938,287898,,585639051,287898 - Engager - 300x250,88793551,Running,295046551,301624551,2/1/2010,8/2/2010,Active,,Guaranteed,Publisher test,Maintainer test,example-site.com,,All,All,,Interest: Dental; custom geo zones: City,300x250,-,CPM,$37.49 ,"4,415","3,246",3,0,$165.52 ,$121.69 ,"2,895",805,0,0,$30.18 ,$37.49 ,0,$0.00 ,IMPRESSIONBASED,NA,USD
Por favor, mire esta página y vea si tiene lo que está buscando. Debería ser todo lo que necesita ya que está tratando con una sola mesa. Datos de carga de MySQL Infile
Entonces, por ejemplo, podrías hacer algo como esto:
LOAD DATA INFILE ''filepath'' INTO TABLE ''tablename'' FIELDS TERMINATED BY '','' LINES TERMINATED BY ''/n'' (column2, column3, column4);
Eso debería darte una idea. Por supuesto, hay más opciones que se pueden agregar como se ve en el enlace anterior.
Puede tener valores de configuración de MySQL para ciertas columnas durante la importación. Si su campo de id
se establece en incremento automático, puede establecerlo en nulo durante la importación y MySQL le asignará valores de incremento. Intente poner algo como esto en la pestaña de SQL en phpMyAdmin:
LOAD DATA INFILE ''path/to/file.csv'' INTO TABLE your_table FIELDS TERMINATED BY '','' LINES TERMINATED BY ''/n'' SET id=null;
asegúrese de usar LOAD DATA LOCAL INFILE si el archivo de importación es local. :)