Hvordan eksportere tabellen til CSV i MySQL

How Export Table Csv Mysql



CSV -fil er et veldig vanlig tekstfilformat som støttes av mange applikasjoner. Hele CSV-formen er kommaseparerte verdier. Det betyr at data er atskilt med et komma i hver linje i denne filen. Den brukes hovedsakelig til å utveksle tabelldata mellom forskjellige typer applikasjoner som støtter dette filformatet. XML er et annet filformat som vanligvis brukes til å utveksle data mellom applikasjoner. Men CSV -fil er et bedre alternativ enn XML -filen, fordi den tar mindre plass og båndbredde enn en XML -fil. Du må eksportere data i CSV -format fra ett program før du importerer dataene til et annet program. MySQL støtter forskjellige måter å eksportere data fra databasetabeller på. CSV -format er en av dem. Denne artikkelen viser forskjellige måter å eksportere data i CSV -format fra MySQL -databasetabellen.

Forutsetning:

Før du kjører noen eksportuttalelse, må du opprette en ny database og tabeller eller velge en eksisterende database og tabeller. Kjør følgende kommandoer for å lage en bibliotek database og tre tabeller navngitt bøker, låntakere og bok_lån_info .







SKAPE DATABASE bibliotek;
BRUK bibliotek;

SKAPE BORD bøker(
id INT IKKE NULL AUTO_INCREMENT ,
tittel varchar (femti) IKKE NULL ,
forfatter varchar (femti) IKKE NULL ,
forlegger varchar (femti) IKKE NULL ,
PRIMÆRNØKKEL (id)
) MOTOR = INNODB ;

SKAPE BORD låntakere(
id VARCHAR (femti) IKKE NULL ,
Navn varchar (femti) IKKE NULL ,
adresse varchar (femti) IKKE NULL ,
e -post varchar (femti) IKKE NULL ,
PRIMÆRNØKKEL (id)
);

SKAPE BORD bok_lån_info(
låne_id VARCHAR (femti),
bok_id INT ,
låne_dato DATO IKKE NULL ,
returdato DATO IKKE NULL ,
status VARCHAR (femten) IKKE NULL ,
INDEKS par_ind(bok_id),
PRIMÆRNØKKEL (låne_id,låne_dato),
UTENLANDSK NØKKEL (bok_id) REFERANSER bøker(id)
SLETT CASCADE
OPPDATER CASCADE );

Kjør følgende SQL -kommandoer for å sette inn noen data i tre tabeller.



SETT INN INN I bøker VERDIER
( NULL , 'Å drepe en sangfugl', 'Harper Lee', 'Grand Central Publishing'),
( NULL , 'Hundre år med ensomhet', 'Garcia Marquez', 'Lutfi Ozkok'),
( NULL , 'Usynlig mann', 'Ralph Ellison', 'Encyclopadeia Britannica, Inc.');

SETT INN INN I låntakere VERDIER
('123490', 'Patrick Wood', '34 West Street LANCASTER LA14 9ZH ', '[e -postbeskyttet]'),
('157643', 'Ezra Martin', '10 The Grove BIRMINGHAM B98 1EU ', '[e -postbeskyttet]'),
('146788', 'Frederick Hanson', '85 Highfield Road SHREWSBURY SY46 3ME ',
'[e -postbeskyttet]');

SETT INN INN I bok_lån_info VERDIER
('123490', 1, '2020-02-15', '2020-02-25', 'Returnert'),
('157643', 2, '2020-03-31', '2020-03-10', 'Avventer'),
('146788', 3, '2020-04-10', '2020-01-20', 'Lånt');

Hver eksporterte fil lagres på et bestemt sted i MySQL, og plasseringen er lagret i variabelen, secure_file_priv . Kjør følgende kommando for å finne banen til filen. Dette er en skrivebeskyttet variabel som du ikke kan endre.



FORESTILLING VARIABLER SOM 'sikre_fil_priv ';





Plasseringen av filen er ‘/Var/lib/mysql-files/’ . Du må bruke denne plasseringen når du kjører eksportkommandoen.

Eksporter data i CSV -format ved hjelp av INTO OUTFILE -setning:

Enhver databasetabell kan eksporteres ved å bruke I UTFIL uttalelse. Anta at jeg vil eksportere dataene til bøker bord. Kjør følgende kommando for å kontrollere de eksisterende dataene i denne tabellen.



PLUKKE UT * FRA bøker;

Ethvert filnavn med .csv utvidelse kan angis for eksportfilnavnet. Kjør følgende eksportkommando for å opprette books.csv filen på stedet, /var/lib/mysql-files/.

PLUKKE UT tittel,forfatter,forlegger FRA bøker INN I UTFIL '/var/lib/mysql-files/books.csv';

Gå til eksportstedet for å kontrollere at filen er opprettet på not. Klikk på filen for å vise innholdet i filen. Hvis komma finnes som et innhold i en hvilken som helst feltverdi i tabellen, vil den dele verdien i flere verdier. I bøker bord, forlegger feltet inneholder et komma (,) som innhold i den tredje posten. Hvis du undersøker innholdet i CSV -filen, vil du se at utgiverinnholdet er delt inn i to verdier som ikke er passende.

For å løse problemet ovenfor kan du eksportere bøker tabelldata til en CSV -fil ved å spesifisere nødvendige skilletegn riktig i SQL -setningen. Kjør følgende kommando for å eksportere bøker bord inn books2.csv filen på riktig måte. Her brukes tre avgrensere for å eksportere data på riktig måte. Disse er FELTER AVSLUTTET AV , LUKKET AV og LINJER AVSLUTTET AV .

PLUKKE UT tittel,forfatter,forlegger FRA bøker
INN I UTFIL '/var/lib/mysql-files/books2.csv'
ENGER AVSLUTTET AV ','
LUKKET AV '' '
LINJER AVSLUTTET AV ' n';

Nå, hvis du åpner books2.csv filen vil du se at det forrige problemet er løst i denne filen, og dataene vil komma (,) er ikke delt inn i flere verdier.

Eksporter data i CSV -format ved hjelp av mysql -klienten:

Tabelldataene kan eksporteres til en CSV -fil ved å bruke mysql -klienten. Låntabellen er eksportert i denne delen av denne artikkelen. Kjør følgende kommando for å kontrollere det eksisterende innholdet i denne tabellen.

PLUKKE UT * FRA låntakere;

mysql uttalelse med `men ' kommandoen brukes her for å eksportere dataene. En av fordelene med denne uttalelsen er at du kan angi hvilken som helst plassering og filnavn for lagring av CSV -filen uten standardplasseringen som ble brukt i forrige eksempel. Hvis det ikke er noe passord for rotbrukeren -s alternativet vil bli utelatt. Det eksporterte stedet er /tmp og filnavnet er output.csv her.

mysql-h lokal vert-du roter-s-Og'velg * fra bibliotek. låntakere' |
seder/ t/,/g ' > /tmp/output.csv

Hvis du åpner output.csv filen, vil følgende utgang vises.

Eksporter data i CSV -format ved hjelp av phpmyadmin:

Databasetabellen kan enkelt eksporteres til CSV -fil ved å bruke et hvilket som helst databaseadministrativt verktøy. Du må installere verktøyet før du eksporterer. phpmyadmin brukes her for å eksportere tabellen til CSV -filen. Her vil det eksporterte filnavnet være navnet på tabellen. Kjør følgende URL i en hvilken som helst nettleser for å vise den eksisterende databaselisten til MySQL -serveren.

http: // localhost/phpmyadmin

Velg tabellen i databasen du vil eksportere, og klikk på Eksport kategorien fra høyre side. Velg CSV -formatet fra Format rullegardinlisten og klikk på knapp. Velg Lagre filen alternativet og trykk OK knapp.


Filen vil bli lastet ned i Nedlastinger mappe. Her, bok_lån_info tabellen eksporteres. Så, CSV -filnavnet blir book_lorrow_info.csv og følgende innhold vises hvis du åpner filen.

Konklusjon:

Datautvekslingsoppgaven mellom programmene blir lettere ved å bruke eksportfunksjonen til databaseserveren. MySQL støtter mange andre filformater for å eksportere tabelldata. Sql filformat brukes hovedsakelig til å overføre data mellom de samme databaseserverne. CSV -format er veldig nyttig hvis du vil utveksle data mellom to forskjellige applikasjoner.