Hogyan exportáljunk táblázatot CSV-be a MySQL-ben

A CSV fájl egy nagyon gyakori szöveges fájlformátum, amelyet számos alkalmazás támogat. A CSV teljes formája a Comma-Separated Values (vesszővel elválasztott értékek). Ez azt jelenti, hogy az adatok vesszővel vannak elválasztva ennek a fájlnak minden sorában. Elsősorban táblázatos adatok cseréjére használják az ezt a fájlformátumot támogató különböző típusú alkalmazások között. Az XML egy másik olyan fájlformátum, amelyet általában az alkalmazások közötti adatcserére használnak. A CSV fájl azonban jobb választás, mint az XML fájl, mivel kevesebb helyet és sávszélességet igényel, mint az XML fájl. Az adatokat CSV formátumban kell exportálni az egyik alkalmazásból, mielőtt az adatokat egy másik alkalmazásba importálná. A MySQL különböző módokon támogatja az adatok exportálását az adatbázis tábláiból. A CSV formátum az egyik mód közülük. Ez a cikk különböző módokat mutat be az adatok CSV formátumban történő exportálására a MySQL adatbázis táblájából.

Előfeltételek:

Az exportálási utasítások futtatása előtt létre kell hoznia egy új adatbázist és táblákat, vagy ki kell választania egy meglévő adatbázist és táblákat. Futtassa a következő parancsokat egy könyvtári adatbázis és három tábla létrehozásához, amelyek neve books, borrowers és book_borrow_info.

Futtassa a következő SQL-parancsokat néhány adat beillesztéséhez a három táblába.

Minden exportált fájl egy adott helyen tárolódik a MySQL-ben, és a hely a “secure_file_priv” változóban van tárolva. Futtassa a következő parancsot a fájl elérési útvonalának kiderítéséhez. Ez egy csak olvasható változó, amelyet nem tud megváltoztatni.

SHOW VARIABLES LIKE “secure_file_priv”;

A fájl helye ‘/var/lib/mysql-files/’. Ezt a helyet kell használnia az export parancs futtatásakor.

Adatok exportálása CSV formátumban az INTO OUTFILE utasítás használatával:

Minden adatbázis tábla exportálható az INTO OUTFILE utasítás használatával. Tegyük fel, hogy a könyvek tábla adatait szeretném exportálni. Futtassa a következő parancsot a tábla meglévő adatainak ellenőrzéséhez.

SELECT * FROM books;

Az exportálandó fájlnevet .csv kiterjesztéssel bármilyen fájlnév megadható. Futtassa az alábbi export parancsot a books.csv fájl létrehozásához a /var/lib/mysql-files/.

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

Nézze meg az exportálás helyét, hogy ellenőrizze, a fájl nem jön-e létre. Kattintson a fájlra a fájl tartalmának megjelenítéséhez. Ha a vessző a táblázat bármely mezőértékének tartalmaként létezik, akkor az értéket több értékre választja szét. A könyvek táblázatban a kiadó mező a harmadik rekordban tartalmaz egy vesszőt(,) tartalomként. Ha megvizsgálja a CSV-fájl tartalmát, láthatja, hogy a kiadó tartalma két értékre van szétválasztva, ami nem megfelelő.

A fenti probléma megoldásához a könyvek tábla adatait CSV-fájlba exportálhatja a szükséges elválasztójelek megfelelő megadásával az SQL utasításban. A books táblázat books2.csv fájlba történő megfelelő exportálásához futtassa a következő parancsot. Itt három elválasztójelet használunk az adatok megfelelő exportálásához. Ezek a következők: FIELDS TERMINATED BY, ENCLOSED BY és LINES TERMINATED BY.

Ha most megnyitja a books2.csv fájlt, akkor látni fogja, hogy az előző probléma megoldódott ebben a fájlban, és az adatok vesszővel(,) nem lesznek több értékre osztva.

Adatok exportálása CSV formátumban a mysql kliens segítségével:

A táblázat adatait a mysql kliens segítségével lehet CSV fájlba exportálni. 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 fájlt, akkor a következő kimenet jelenik meg.

Adatok exportálása CSV formátumban a phpmyadmin segítségével:

Az adatbázis tábla nagyon egyszerűen exportálható CSV fájlba bármely adatbázis-adminisztrációs eszközzel. Az exportálás előtt telepíteni kell az eszközt. phpmyadmin-t használjuk itt a táblázat CSV fájlba történő exportálásához. Itt az exportált fájl neve a táblázat neve lesz. Futtassa az alábbi URL-t bármelyik böngészőben a MySQL-kiszolgáló meglévő adatbázisainak listájának megjelenítéséhez.

Válassza ki az adatbázis exportálni kívánt tábláját, és kattintson a jobb oldalon az Exportálás fülre. Válassza ki a CSV formátumot a Format legördülő listából, majd kattintson a Go gombra. Válassza a Fájl mentése opciót, és nyomja meg az OK gombot.


A fájl a letöltések mappába kerül letöltésre. Itt a book_borrow_info táblázat kerül exportálásra. Tehát a CSV fájl neve book_borrow_info.csv lesz, és a következő tartalom jelenik meg, ha megnyitja a fájlt.

Következtetés:

Az alkalmazások közötti adatcsere feladata egyszerűbbé válik az adatbázis-kiszolgáló export funkciójának használatával. A MySQL számos más fájlformátumot is támogat a táblaadatok exportálásához. Az sql fájlformátumot elsősorban az azonos adatbázis-kiszolgálók közötti adatátvitelre használják. A CSV formátum nagyon hasznos, ha két különböző alkalmazás között szeretnénk adatokat cserélni.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.