Jak wyeksportować tabelę do CSV w MySQL

Jak wyeksportować tabelę do CSV w MySQL
Plik CSV jest bardzo popularnym formatem pliku tekstowego obsługiwanego przez wiele aplikacji. Pełna forma CSV to wartości oddzielone przecinkami. Oznacza to, że dane są oddzielone przecinkiem w każdym wierszu tego pliku. Służy głównie do wymiany danych tabelarycznych między różnymi typami aplikacji, które obsługują ten format pliku. XML to kolejny format pliku, który powszechnie używany do wymiany danych między aplikacjami. Ale plik CSV jest lepszą opcją niż plik XML, ponieważ wymaga mniej miejsca i przepustowości niż plik XML. Musisz wyeksportować dane w formacie CSV z jednej aplikacji przed zaimportowaniem danych do innej aplikacji. MySQL obsługuje różne sposoby eksportowania danych z tabel bazy danych. Format CSV jest jednym z nich. W tym artykule pokazano różne sposoby eksportowania danych w formacie CSV z tabeli bazy danych MySQL.

Warunek wstępny:

Przed uruchomieniem dowolnej instrukcji eksportu musisz utworzyć nową bazę danych i tabele lub wybrać istniejącą bazę danych i tabele. Uruchom następujące polecenia, aby utworzyć biblioteka baza danych i trzy tabele nazwane Książki, kredytobiorcy I book_borrow_info.

Utwórz bibliotekę bazy danych;
Użyj biblioteki;
Utwórz książki stołowe (
id int not null auto_increment,
tytuł varchar (50) nie null,
Autor Varchar (50) nie null,
Wydawca Varchar (50) nie null,
Klucz podstawowy (id)
) Silnik = innodb;
Utwórz pożyczkobiorców tabeli (
id varchar (50) nie null,
Nazwa varchar (50) nie null,
Adres varchar (50) nie null,
e -mail varchar (50) nie null,
Klucz podstawowy (id)
);
Utwórz tabelę book_borrow_info (
pożyczka_id varchar (50),
book_id int,
datę pożyczki_date nie null,
return_date data nie null,
Status varchar (15) nie null,
Indeks par_ind (book_id),
Klucz podstawowy (pożyczka_dem, pożyczka_date),
Klucz zagraniczny (book_id) Odwołuje się książki (id)
Na usunięciu kaskady
Na aktualizacji kaskady);

Uruchom następujące polecenia SQL, aby wstawić niektóre dane do trzech tabel.

Wstaw do wartości książek
(Null, „Kill a Mockingbird”, „Harper Lee”, „Grand Central Publishing”),
(Null, „Sto lat samotności”, „Garcia Marquez”, „Lutfi Ozkok”),
(Null, „Invisible Man”, „Ralph Ellison”, „Encyclopadeia Britannica, Inc.');
Wstaw do wartości pożyczkobiorców
(„123490”, „Patrick Wood”, '34 West Street Lancaster La14 9zh ', „[email protected] '),
(„157643”, „Ezra Martin”, '10 The Grove Birmingham B98 1EU ', „[email protected] '),
(„146788”, „Frederick Hanson”, '85 Highfield Road Shrewsbury Sy46 3me ',
[email protected] ');
Wstaw wartości Book_Borrow_Info
(„123490”, 1, „2020-02-15”, „2020-02-25”, „powrócił”),
(„157643”, 2, „2020-03-31”, „2020-03-10”, „oczekujący”),
(„146788”, 3, „2020-04-10”, „2020-01-20”, „pożyczony”);

Każdy wyeksportowany pliki przechowuje w określonej lokalizacji w MySQL, a lokalizacja jest przechowywana w zmiennej „Secure_file_priv". Uruchom następujące polecenie, aby znaleźć ścieżkę pliku. To jest zmienna tylko do odczytu, której nie można zmienić.

Pokaż zmienne takie jak „Secure_file_Priv”;

Lokalizacja pliku jest „/var/lib/mysql-files/”. Musisz użyć tej lokalizacji w momencie uruchomienia polecenia eksportu.

Eksportuj dane w formacie CSV za pomocą instrukcji Outfile:

Każda tabela bazy danych można wyeksportować za pomocą za pomocą Do Outfile oświadczenie. Załóżmy, że chcę wyeksportować dane książki tabela. Uruchom następujące polecenie, aby sprawdzić istniejące dane z tej tabeli.

Wybierz * z książek;

Każda nazwa pliku z .CSV Rozszerzenie można ustawić dla nazwy pliku eksportu. Uruchom następujące polecenie eksportu, aby utworzyć książki.CSV Plik w lokalizacji,/var/lib/mysql-files/.

Wybierz tytuł, autor, wydawca z książek w Outfile '/var/lib/mysql-files/książki.CSV ';

Przejdź do lokalizacji eksportu, aby sprawdzić, czy plik jest tworzony na nie. Kliknij plik, aby wyświetlić zawartość pliku. Jeśli przecinek istnieje jako zawartość dowolnej wartości pola tabeli, wówczas podzieli wartość na wiele wartości. w książki tabela, wydawca Pole zawiera przecinek (,) jako treść w trzecim zapisie. Jeśli zbadasz treść pliku CSV, zobaczysz, że treść wydawcy jest podzielona na dwie wartości, które nie są odpowiednie.

Aby rozwiązać powyższy problem, możesz wyeksportować książki Dane tabeli w pliku CSV poprzez prawidłowe określenie niezbędnych ograniczeń w instrukcji SQL. Uruchom następujące polecenie, aby wyeksportować książki stół do książki2.CSV odpowiednio. Tutaj do prawidłowego eksportu danych używanych jest trzy ograniczniki. To są Pola zakończone przez, Zamknięty przez I Linie zakończone przez.

Wybierz tytuł, autor, wydawca z książek
Do Outfile '/var/lib/mysql-files/książki2.CSV '
Pola zakończone przez „”
Zamknięte przez „”
Linie zakończone przez „\ n”;

Teraz, jeśli otworzysz książki2.CSV Plik, wówczas poprzedni problem zostanie rozwiązany w tym pliku, a dane przecinka (,) nie są podzielone na wiele wartości.

Eksportuj dane w formacie CSV za pomocą klienta MySQL:

Dane tabeli można wyeksportować do pliku CSV za pomocą klienta MySQL. Tabela kredytobiorców jest eksportowana w tej części tego artykułu. Uruchom następujące polecenie, aby sprawdzić istniejącą treść tej tabeli.

Wybierz * od kredytobiorców;

Mysql stwierdzenie z „sed” Polecenie jest używane tutaj do eksportowania danych. Jedną z zalet tego stwierdzenia jest to, że możesz ustawić dowolną lokalizację i nazwę pliku do przechowywania pliku CSV bez domyślnej lokalizacji, która jest używana w poprzednim przykładzie. Jeśli nie ma hasła dla użytkownika root, wówczas -P opcja zostanie pominięta. Wyeksportowana lokalizacja to /TMP A nazwa pliku jest wyjście.CSV Tutaj.

mysql -h localhost -u root -p -e 'wybierz * z biblioteki.pożyczkobiorcy |
sed 's/\ t/,/g'>/tmp/wyjście.CSV

Jeśli otworzysz wyjście.CSV plik pojawi się następujące dane wyjściowe.

Eksportuj dane w formacie CSV przy użyciu phpMyAdmin:

Tabela bazy danych można bardzo łatwo wyeksportować do pliku CSV za pomocą dowolnego narzędzia administracyjnego bazy danych. Musisz zainstalować narzędzie przed wykonaniem eksportu. phpMyAdmin jest używany tutaj do eksportowania tabeli do pliku CSV. Tutaj eksportowana nazwa pliku będzie nazwą tabeli. Uruchom następujący adres URL w dowolnej przeglądarce, aby wyświetlić istniejącą listę bazy danych serwera MySQL.

http: // localhost/phpmyadmin

Wybierz tabelę bazy danych, którą chcesz wyeksportować, i kliknij Eksport Zakładka z prawej strony. Wybierz format CSV z Format lista rozwijana i kliknij GO przycisk. Wybierz Zapisz plik opcja i naciśnij OK przycisk.


Plik zostanie pobrany w Pliki teczka. Tutaj, book_borrow_info Tabela jest eksportowana. Tak więc nazwa pliku CSV będzie book_borrow_info.CSV a następująca zawartość pojawi się, jeśli otworzysz plik.

Wniosek:

Zadanie wymiany danych między aplikacjami staje się łatwiejsze przy użyciu funkcji eksportu serwera bazy danych. MySQL obsługuje wiele innych formatów plików w celu eksportu danych tabeli. SQL Format pliku służy głównie do przesyłania danych między tym samym serwerami bazy danych. Format CSV jest bardzo pomocny, jeśli chcesz wymieniać dane między dwiema różnymi aplikacjami.