Mam kilka plików CSV, które chcę zaimportować do bazy danych SQL Server . Wiem, czy jest to możliwe przy wstawianiu BULK, ale chcę rozwiązania, tak aby tabela importu została automatycznie utworzona przed na podstawie pierwszego wiersza plików CSV, są to nazwy kolumn.Importowanie pliku CSV do programu SQL Server (w tym automatyczne tworzenie tabel)
Odpowiedz
SQL Server Management Studio udostępnia narzędzie do importu/eksportu, które ma opcję automatycznego tworzenia tabel.
można uzyskać do niego dostęp poprzez kliknięcie prawym przyciskiem myszy na bazie danych w Eksploratorze obiektów i wybierając Tasks-> Importuj dane ...
Stamtąd kreatora powinna być oczywista i łatwa w nawigacji. Wybierasz swój plik CSV jako źródło, pożądany cel, konfigurujesz kolumny i uruchamiasz pakiet.
Jeśli potrzebujesz szczegółowych wskazówek, istnieje wiele przewodników online, tutaj jest ładny jeden: http://www.mssqltips.com/sqlservertutorial/203/simple-way-to-import-data-into-sql-server/
Ten link nie obejmuje plików CSV, co było pytaniem. – rncrtr
@rncrtr Mogę zapewnić, że proces jest prawie taki sam. Istnieje niewielka różnica w niektórych opcjach po wybraniu pliku płaskiego jako źródła zamiast programu Excel z opisanego, ale kreator jest wystarczająco dobry, więc nie powinno być problemu z jego zrozumieniem. –
Na serwerze, z którego korzystam, nie ma opcji pliku płaskiego, więc jest to dla mnie ślepy zaułek. Dowiedziałem się, że istnieje oddzielne narzędzie, które go nie zawiera (narzędzie do importu i eksportu danych), ale dopiero po pewnym czasie okazało się, że był to bilet do użytku. Dzięki. – rncrtr
Można utworzyć zmienną tabeli zmiennych i wstawić do niej dane, a następnie wstawić dane do rzeczywistej tabeli, wybierając ją z tabeli tymczasowej.
declare @TableVar table
(
firstCol varchar(50) NOT NULL,
secondCol varchar(50) NOT NULL
)
BULK INSERT @TableVar FROM 'PathToCSVFile' WITH (FIELDTERMINATOR = ',', ROWTERMINATOR = '\n')
GO
INSERT INTO dbo.ExistingTable
(
firstCol,
secondCol
)
SELECT firstCol,
secondCol
FROM @TableVar
GO
Dlaczego po prostu nie wstawiłeś go bezpośrednio do istniejącej tabeli? – Travis
Znalazłem, że musisz użyć tabeli tymczasowej zamiast zmiennej tabeli. Zobacz ten [odpowiedź] (http://stackoverflow.com/a/14113855/469637) – Jeff
Nie można wstawić zbiorczo do "zmiennej tabeli". musi być tempem lub prawdziwym stołem. –
- 1. Importowanie wielu plików CSV do programu SQL Server z folderu
- 2. Importowanie pliku CSV do Java
- 3. Automatyczne importowanie produktów do Woocommerce
- 4. Importowanie XML do SQL Server
- 5. Jaki jest cel PAD_INDEX w tym ograniczeniu programu SQL Server?
- 6. Tworzenie pliku bazy danych programu SQL Server CE programowo
- 7. Importowanie ORACLE SDO_GEOMETRY do SQL Server Geometry
- 8. Narzędzie różnicowe programu SQL Server
- 9. Tworzenie tymczasowych tabel w SQL
- 10. Importowanie określonych tabel z pliku zrzutu Oracle?
- 11. Importowanie dużego pliku CSV przy użyciu phpMyAdmin
- 12. Wyświetlenia indeksowane programu SQL Server
- 13. Niszczenie danych z XML, importowanie do tabel relacyjnych (SQL Server 2008)
- 14. Zakres tabel tymczasowych w SQL Server
- 15. Importowanie pliku CSV w pand w dataframe pandy
- 16. Usuwanie globalnych tabel tymczasowych (## tempTable) w SQL Server
- 17. Tworzenie kolumny obliczeniowej w SQL Server 2008
- 18. Eksportuj wiele tabel z SQL Server do XML do przywracania
- 19. Wiele ciągów połączenia programu SQL Server w pliku app.config
- 20. Importowanie pliku CSV do MySQL o innym formacie daty
- 21. Tworzenie pliku csv z php
- 22. Jak wywołać procedurę przechowywaną programu SQL Server z programu PowerShell?
- 23. Poziom zgodności programu SQL Server 2008
- 24. AMPL vs. Python - Importowanie tabel (słowniki wielowymiarowe?)
- 25. Alternatywa programu Doradca dostrajania programu SQL Server?
- 26. Jak przekonwertować plik .mdf programu SQL Server 2008 do programu SQL Server 2012?
- 27. Jaka jest właściwa składnia w SQL Server do adresowania tabel?
- 28. przenoszenie danych z programu Excel do programu SQL Server tabeli
- 29. importowanie i przetwarzanie danych z pliku CSV w Delphi
- 30. Importowanie dużą csv do bazy danych mysql
Czy potrzebny jest program, aby to zrobić? Możesz użyć narzędzia do importu programu SQL Server Management Studio. – 03Usr