Sziasztok,
CSV file-ok importálásával foglalkoztam MSSQL adatbázisba. Ez egy több féle képpen megközelíthető dolog. Az első amire én is rátaltam a BULK INSERTE-es megoldás ami a következő képpen néz ki:
CREATE TABLE Test
(ID INT,
FirstName VARCHAR(40),
LastName VARCHAR(40),
BirthDate SMALLDATETIME)
BULK INSERT Test
FROM ‘C:\test.csv’
WITH
(
FIRSTROW = 2,
FIELDTERMINATOR=’,’,
ROWTERMINATOR = ‘\n’
)
A “FIRSTROW” azt a célt hivatott betölteni, hogy amennyiben a csv file-unk első pár sora tartalmazza a fejlécet úgy azt ki tudjuk hagyni, különben érvénytelen adat miatt hibát kapunk. Többi megadott paraméter éretelemszerűen a separáló karaktert, valamint a sor végén használt karaktert jelezi.
Ezzel a módszerrel sajnos nekem nem sikerült, (és a fórumok alapján még sok másnak sem) megoldani az exportot.
Az általam használt és működő megoldás az volt, hogy a csv file-t lementettem .xlsx-be majd ezt importáltam a már meglévő adatbázisomba. A feltétel csupán csak annyi, hogy a fejlécnek tartalmaznia kell, az adott oszlopok neveit, tehát header + csv data. Valamint le kell tölteni és installálni az Office System Driver-t. Erről a link-ről érhető el.
Ezek után a Microsoft SQL Server Management Studio-ban az adatbázison jobb klikk majd Tasks – Import Data:

Majd ezek után ki kell választanunk az adatforrást ami az adott esetben Microsoft Excel valamint a file elérését.
Ki kell választanunk az adatbázist, hogy hova szeretnénk importálni az adatokat.

Amennyiben a file-unk érvényes, így a következő ablakokkal találkozunk, ahol lehetőségünk van változtatni a tábla nevén és az oszlopainak beállításain.
Amennyiben az adatok megfelelőek úgy lehetőségünk van rá, hogy azonnal elkezdjük a folyamatot. Ha minden rendben zajlott akkor egy hasonló ablakkal kell, hogy találkozzunk:

Az adatbázis táblánk elkészült az általunk módosított/jóváhagyott paraméterek mentén.
A kész táblában viszont nincsen elsődleges azonosító, amit a következő kódrészlettel pótoltam:

Végül az adatbázis tábla kész és még elsődleges kulcsot is tartalmaz.