W MySQL (oraz zwykle w MariaDB) podstawowym poleceniem do masowego importu danych z pliku do tabeli jest LOAD DATA INFILE. Składnia w najprostszym wariancie wskazuje ścieżkę do pliku oraz tabelę docelową, np. LOAD DATA INFILE 'file.csv' INTO TABLE table_name;. To polecenie jest typowo używane do szybkiego zasilania tabel danymi, np. podczas inicjalizacji bazy lub migracji.
Warto pamiętać, że import CSV często wymaga doprecyzowania formatu: domyślne ustawienia nie muszą odpowiadać przecinkom i cudzysłowom typowym dla CSV. Dlatego w praktyce spotyka się opcje określające separator pól i znak otoczenia tekstu (np. rozdzielanie przecinkami, wartości w cudzysłowie) oraz polecenie pomijania nagłówka (IGNORE LINES). Dodatkowo mogą pojawić się wymagania środowiskowe, takie jak uprawnienie FILE czy włączenie obsługi importu lokalnego (LOCAL INFILE) w zależności od tego, skąd ma być czytany plik.
Dlaczego pozostałe propozycje są błędne?
- IMPORT INTO ... wygląda wiarygodnie językowo, ale nie jest standardowym poleceniem importu w SQL ani typową składnią MySQL.
- COPY ... FROM ... to składnia kojarzona m.in. z PostgreSQL, więc w kontekście MySQL nie będzie poprawna.
- SELECT * FROM 'file.csv' INTO ... sugeruje traktowanie pliku jak tabeli/źródła zapytania, co w typowym SQL nie działa w ten sposób (CSV nie jest "tabelą" dostępną przez SELECT bez dodatkowych narzędzi/adapterów).
Na egzaminie zwracaj uwagę na to, dla jakiego silnika bazy danych jest pytanie: MySQL często używa LOAD DATA INFILE, podczas gdy inne systemy mają własne mechanizmy (np. COPY, BULK INSERT). To pomaga uniknąć pomyłek wynikających z mieszania składni.