SELECT INTO OUTFILE
On januari 20, 2022 by adminSyntax
SELECT ... INTO OUTFILE 'file_name' export_options: ENCLOSED BY 'char'] ] ]
Innehåll
- Syntax
- Beskrivning
- Tecken-set
- Exempel
- Se även
Beskrivning
SELECT INTO OUTFILE
skriver de resulterande raderna till en fil, och gör det möjligt att använda kolumn- och radterminatorer för att ange ett visst utdataformat. Standardinställningen är att fält avslutas med tabulatorer (\t
) och rader med nya rader (\n
).
Filen får inte finnas. Den kan inte skrivas över. En användare måste ha privilegiet FILE för att kunna köra det här kommandot. Dessutom behöver MariaDB behörighet att skriva filer på den angivna platsen. Om systemvariabeln secure_file_priv är inställd på ett icke-tomt katalognamn kan filen endast skrivas i den katalogen.
Uttalandet LOAD DATA INFILE
kompletterar SELECT INTO OUTFILE
.
Teckensatser
Klausulen CHARACTER SET
anger i vilken teckenuppsättning resultaten ska skrivas. Utan klausulen sker ingen konvertering (den binära teckenuppsättningen). I detta fall, om det finns flera teckenuppsättningar, kommer resultatet också att innehålla dessa och kanske inte lätt kan laddas om.
I fall där du har två servrar som använder olika teckenuppsättningar kan användningen av SELECT INTO OUTFILE
för att överföra data från den ena till den andra ge oväntade resultat. För att se till att MariaDB tolkar escape-sekvenserna korrekt använder du CHARACTER SET
-klausulen på både SELECT INTO OUTFILE
-anvisningen och den efterföljande LOAD DATA INFILE
-anvisningen.
Exempel
Följande exempel producerar en fil i CSV-format:
SELECT customer_id, firstname, surname INTO OUTFILE '/exportdata/customers.txt' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' FROM customers;
Se även
- SELECT
- LOAD_DATA() funktion
- LOAD DATA INFILE
- SELECT INTO Variable
- SELECT INTO DUMPFILE
Lämna ett svar