Ten blog nie jest już rozwijany. Wraz ze wszystkimi artykułami zostały przeniesiony pod adres wmroczkowski.pl

Czy chcesz przejść pod nowy adres?

sobota, 7 listopada 2009

[MySQL] Zapisywanie wyników zapytania bezpośrednio do pliku

Oprócz zapisywania wyników zapytać SQL do zmiennych i wyświetlania ich na ekranie możemy też zapisywać je bezpośrednio do pliku. Zakładając, że mamy prostą tabelę:

CREATE TABLE `user` (
`id` int(11) NOT NULL,
`name` varchar(45) character set latin2 NOT NULL,
`surname` varchar(70) character set latin2 NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

INSERT INTO `user` VALUES (1, 'Name1', 'Surname1');
INSERT INTO `user` VALUES (2, 'Name2', 'Surname2');
INSERT INTO `user` VALUES (3, 'Name3', 'Surname3');
INSERT INTO `user` VALUES (4, 'Name4', 'Surname4');

Możemy użyć następującego zapytania aby zapisać wynik do pliku:

SELECT * INTO OUTFILE 'nazwa_pliku.txt' FIELDS TERMINATED BY '\t' ESCAPED BY '\\' LINES TERMINATED BY '\n' FROM user

Takie zapytanie spowoduje zapisanie pliku 'nazwa_pliku.txt' do folderu bazy danych np. MySQL\Data\Nazwa_bazy. Aby zapisać plik w innym miejscu należy w nazwie podać pełną ścieżkę. Analogicznie działa funkcja LOAD DATA INFILE, która importuje z pliku tektowego rekordy do bazy.

Brak komentarzy: