SELECT INTO OUTFILE
On január 20, 2022 by adminSyntax
SELECT ... INTO OUTFILE 'file_name' export_options: ENCLOSED BY 'char'] ] ]
Contents
- Syntax
- Description
- Character-sets
- Példa
- See Also
Description
SELECT INTO OUTFILE
a kapott sorokat egy fájlba írja, és lehetővé teszi az oszlop- és sorvégződések használatát egy adott kimeneti formátum megadásához. Alapértelmezés szerint a mezőket tabulátorral (\t
), a sorokat pedig újsorral (\n
) zárja le.
A fájlnak nem szabad léteznie. Nem írható felül. A felhasználónak FILE jogosultságra van szüksége az utasítás futtatásához. Továbbá a MariaDB-nek engedélyre van szüksége a megadott helyen lévő fájlok írásához. Ha a secure_file_priv rendszerváltozó nem üres könyvtárnévre van beállítva, a fájl csak ebbe a könyvtárba írható.
A LOAD DATA INFILE
utasítás kiegészíti a SELECT INTO OUTFILE
utasítást.
Character-sets
A CHARACTER SET
utasítás megadja, hogy az eredményeket milyen karakterkészletben kell kiírni. A záradék nélkül nem történik konverzió (a bináris karakterkészlet). Ebben az esetben, ha több karakterkészlet van, a kimenet ezeket is tartalmazni fogja, és nem biztos, hogy könnyen visszatölthető.
Azokban az esetekben, amikor két szerver különböző karakterkészleteket használ, a SELECT INTO OUTFILE
használata az adatok egyikből a másikba történő átvitelére nem várt eredményeket hozhat. Annak érdekében, hogy a MariaDB helyesen értelmezze az escape-szekvenciákat, használja a CHARACTER SET
záradékot mind a SELECT INTO OUTFILE
utasításban, mind az azt követő LOAD DATA INFILE
utasításban.
Példa
A következő példa egy CSV formátumú fájlt állít elő:
SELECT customer_id, firstname, surname INTO OUTFILE '/exportdata/customers.txt' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' FROM customers;
See Also
- SELECT
- LOAD_DATA() függvény
- LOAD DATA INFILE
- SELECT INTO Variable
- SELECT INTO DUMPFILE
Vélemény, hozzászólás?