Serwisanci dostępni teraz · czynne całą dobę, także w weekendy i świętaWarszawa i okolice · dojazd bezpłatny
Darmowa diagnoza laptopa
Darmowa diagnoza laptopa
Dojazd do klienta bezpłatnie
Dojazd do klienta bezpłatnie
Laptopy zastępcze bezpłatnie
Laptopy zastępcze bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie

Eksport do pliku CSV

Termin Definicja
Eksport do pliku CSV

Eksport do pliku CSV to proces zapisu wyników zapytania SQL w prostym, tekstowym formacie tabelarycznym.

Budowa pliku CSV z wyników zapytania SQL

Eksport do pliku CSV polega na zapisaniu wierszy zwróconych przez zapytanie SQL w postaci tekstowej tabeli. Każdy wiersz wyniku jest zwykle umieszczany w osobnej linii, a wartości poszczególnych kolumn są rozdzielane ustalonym separatorem. Najczęściej stosuje się przecinek, średnik albo tabulator, jednak sam format CSV nie narzuca jednego obowiązkowego znaku rozdzielającego. Z tego powodu program eksportujący powinien jasno określać separator użyty w konkretnym pliku.

W pliku może znajdować się wiersz nagłówkowy zawierający nazwy kolumn, na przykład id;nazwa;data_utworzenia. Kolejne linie zawierają dane w kolejności odpowiadającej kolumnom wyniku zapytania. Eksport może obejmować wszystkie rekordy albo tylko podzbiór określony przez warunki WHERE, zakres dat, sortowanie lub limit liczby wierszy. Istotne jest, aby kolejność kolumn była znana odbiorcy pliku, ponieważ CSV nie przechowuje schematu bazy danych, typów kolumn ani informacji o relacjach między tabelami.

Separatory, cudzysłowy i znaki specjalne

Wartości zawierające separator, znak nowej linii albo znak cudzysłowu wymagają poprawnego kodowania zgodnego z regułami używanego eksportera. Typową metodą jest otoczenie całej wartości cudzysłowami, a wewnętrzny cudzysłów zapisuje się jako dwa kolejne cudzysłowy. Przykładowo tekst Naprawa, test może zostać zapisany jako "Naprawa, test", natomiast tekst zawierający cudzysłów wymaga jego odpowiedniego podwojenia. Bez tych reguł program importujący może błędnie podzielić jedną wartość na kilka kolumn.

Znaczenie ma także kodowanie znaków. Dla polskich liter plik powinien być zapisany w kodowaniu obsługiwanym przez program docelowy, najczęściej UTF-8. Niektóre starsze aplikacje rozpoznają UTF-8 dopiero po obecności znacznika BOM, a inne mogą nieprawidłowo interpretować taki plik. Podczas eksportu trzeba również ustalić sposób zapisu wartości pustych i wartości NULL. Pusta komórka może oznaczać brak danych, pusty tekst albo wartość zastępczą, dlatego przy późniejszym imporcie interpretacja powinna być jednoznaczna.

Typowe problemy podczas eksportu i importu

CSV przechowuje dane jako tekst, więc nie zachowuje automatycznie typów znanych z bazy. Daty, liczby dziesiętne, wartości logiczne i identyfikatory mogą zostać zinterpretowane inaczej przez różne programy. Przykładowo arkusz kalkulacyjny może potraktować numer identyfikacyjny z zerami na początku jako liczbę i usunąć te zera. Może także zmienić sposób wyświetlania daty albo rozpoznać separator dziesiętny zgodnie z ustawieniami regionalnymi systemu. Przy wymianie danych należy dlatego ustalić format dat, separator dziesiętny oraz sposób reprezentowania wartości logicznych.

Duże wyniki zapytań mogą powodować wysokie zużycie pamięci, jeżeli aplikacja najpierw pobiera całą tabelę, a dopiero potem tworzy plik. Bezpieczniejszy mechanizm może odczytywać wynik partiami i zapisywać kolejne rekordy strumieniowo. Przed przekazaniem pliku warto sprawdzić liczbę wyeksportowanych wierszy, zgodność liczby kolumn w każdej linii oraz obecność znaków końca linii. Należy też zweryfikować, czy zapytanie nie zwróciło niezamierzonych duplikatów, rekordów z niepełnymi wartościami albo danych spoza wymaganego zakresu.

Przygotowanie CSV do dalszej pracy na komputerze

Przed otwarciem pliku w arkuszu kalkulacyjnym lub innym programie dobrze jest znać jego separator, kodowanie i obecność nagłówków. Jeżeli aplikacja automatycznie interpretuje zawartość, import należy skonfigurować ręcznie, gdy wyniki rozpoznania są nieprawidłowe. Dotyczy to szczególnie plików z polskimi znakami, pól zawierających średniki lub przecinki oraz kolumn, w których identyfikatory nie powinny być konwertowane na liczby. CSV nadaje się do prostego przekazywania tabel, ale nie zastępuje pełnego mechanizmu kopii bazy, ponieważ nie zawiera indeksów, ograniczeń, procedur ani struktury relacyjnej.

Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów, komputerów PC i podzespołów, dlatego przy problemach z otwieraniem, zapisem lub importem plików CSV można rozpocząć diagnostykę od sprawdzenia programu użytego do eksportu, ustawień kodowania, separatora oraz dostępnego miejsca na dysku. W praktyce pozwala to odróżnić błąd samego zapytania SQL od problemu z interpretacją pliku przez system operacyjny, arkusz kalkulacyjny lub aplikację bazodanową.

+48 22 100 48 29Zadzwoń teraz · serwisant w 1 godzinę