Hur man exporterar en tabell till CSV i MySQL

CSV-filen är ett mycket vanligt textfilformat som stöds av många program. Den fullständiga formen av CSV är Comma-Separated Values (kommaseparerade värden). Det innebär att data separeras med ett kommatecken på varje rad i denna fil. Den används främst för att utbyta tabelldata mellan olika typer av program som stöder detta filformat. XML är ett annat filformat som ofta används för att utbyta data mellan program. Men CSV-filen är ett bättre alternativ än XML-filen, eftersom den tar mindre utrymme och bandbredd i anspråk än en XML-fil. Du måste exportera data i CSV-format från en applikation innan du importerar data till en annan applikation. MySQL stöder olika sätt att exportera data från databastabeller. CSV-formatet är ett av dem. Den här artikeln visar olika sätt att exportera data i CSV-format från MySQL:s databastabell.

Förutsättningar:

För att köra ett exportmeddelande måste du skapa en ny databas och tabeller eller välja en befintlig databas och tabeller. Kör följande kommandon för att skapa en biblioteksdatabas och tre tabeller som heter books, borrowers och book_borrow_info.

Kör följande SQL-kommandon för att infoga vissa data i tre tabeller.

Varje exporterad fil lagras på en viss plats i MySQL och platsen sparas i variabeln ”secure_file_priv”. Kör följande kommando för att ta reda på sökvägen till filen. Detta är en skrivskyddad variabel som du inte kan ändra.

SHOW VARIABLES LIKE ”secure_file_priv”;

Filens plats är ”/var/lib/mysql-files/”. Du måste använda denna plats när du kör exportkommandot.

Exportera data i CSV-format med hjälp av INTO OUTFILE-angivelsen:

Alla databastabeller kan exporteras med hjälp av INTO OUTFILE-angivelsen. Antag att jag vill exportera data från tabellen böcker. Kör följande kommando för att kontrollera befintliga data för den här tabellen.

SELECT * FROM books;

Varje filnamn med .csv-tillägg kan anges som exportfilnamn. Kör följande exportkommando för att skapa filen books.csv på platsen /var/lib/mysql-files/.

SELECT title, author, publisher FROM books INTO OUTFILE ’/var/lib/mysql-files/books.csv’;

Gå till exportplatsen för att kontrollera att filen skapas på inte. Klicka på filen för att visa innehållet i filen. Om det finns ett kommatecken som innehåll i ett fältvärde i tabellen kommer det att separera värdet i flera värden. I tabellen böcker innehåller fältet publisher ett kommatecken(,) som innehåll i den tredje posten. Om du granskar innehållet i CSV-filen kommer du att se att innehållet i förläggaren är separerat i två värden som inte är lämpliga.

För att lösa ovanstående problem kan du exportera data från boktabellen till en CSV-fil genom att ange de nödvändiga avgränsarna korrekt i SQL-angivelsen. Kör följande kommando för att exportera boktabellen till filen books2.csv på lämpligt sätt. Här används tre avgränsare för att exportera data på rätt sätt. Dessa är FIELDS TERMINATED BY, ENCLOSED BY och LINES TERMINATED BY.

Om du nu öppnar filen books2.csv kommer du att se att det tidigare problemet är löst i den här filen och att datan kommer kommatecken(,) inte delas upp i flera värden.

Exportera data i CSV-format med hjälp av mysql-klient:

Tabelldata kan exporteras till en CSV-fil med hjälp av mysql-klient. The borrowers table is exported in this part of this article. Run the following command to check the existing content of this table.

SELECT * FROM borrowers;

mysql statement with `sed` command is used here to export the data. One of the benefits of this statement is that you can set any location and filename for storing the CSV file without the default location that is used in the previous example. If there is no password for the root user then -p option will be omitted. The exported location is /tmp and filename is output.csv here.

mysql -h localhost -u root -p -e ’select * from library.borrowers’ |
sed ’s/\t/,/g’ > /tmp/output.csv

If you open the output.csv-filen kommer följande utdata att visas.

Exportera data i CSV-format med hjälp av phpmyadmin:

Databastabellen kan exporteras till CSV-fil mycket enkelt med hjälp av ett administrativt databasverktyg. Du måste installera verktyget innan du gör exporten. phpmyadmin används här för att exportera tabellen till CSV-filen. Här kommer det exporterade filnamnet att vara tabellens namn. Kör följande URL i en webbläsare för att visa den befintliga databaslistan för MySQL-servern.

Välj den tabell i databasen som du vill exportera och klicka på fliken Exportera på höger sida. Välj CSV-formatet i rullgardinslistan Format och klicka på knappen Gå. Välj alternativet Spara fil och tryck på OK-knappen.


Filen kommer att laddas ner i mappen Downloads. Här exporteras tabellen book_borrow_info. CSV-filnamnet blir alltså book_borrow_info.csv och följande innehåll visas om du öppnar filen.

Slutsats:

Datautbytesuppgiften mellan programmen blir enklare genom att använda exportfunktionen i databasservern. MySQL stöder många andra filformat för att exportera tabelldata. Filformatet sql används främst för att överföra data mellan samma databasservrar. CSV-formatet är mycket användbart om du vill utbyta data mellan två olika program.

Lämna ett svar

Din e-postadress kommer inte publiceras.