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)
PÅ SLETT CASCADE
PÅ 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økerINN 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.
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å gå 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.