SQL SERVER 2008

تجارب من در رابطه با SQL SERVER

وارد کردن داده های یک فایل CSV در SQL Server
ساعت ٤:٢٩ ‎ب.ظ روز ۱۳۸۸/۳/۱٩  کلمات کلیدی: sql server ، bulk insert ، csv ، import data

شاید بعضی اوقات نیاز پیدا کرده باشید که داده هایی را در جداول SQL Server وارد کنید. این مطلب را که قبلا در جایی خوانده بودم را برای شما مینویسم تا شاید به درد بعضی از دوستان بخورد.
همانطور که میدانید CSV فایلیست که در آن مطالب به کمک کاما از هم جدا شده‌اند و یک فرمت استاندارد و شناخته شده میباشد که خیلی از نرم‌افزارهای بزرگ مانند excel هم آن را تولید و هم از آن داده دریافت میکنند.


۱-ابتدا توسط اسکریپت زیر یک جدول تستی بسازید :


Create TestTable
USE TestData
GO
CREATE TABLE CSVTest
(ID INT,
FirstName VARCHAR(40),
LastName VARCHAR(40),
BirthDate SMALLDATETIME)
GO


۲-یک فایل با فرمت CSV در درایو C و در آدرس C:\csvtest.txt بسازید که دارای محتوای زیر باشد :


 1,Masoud,Ramezani,19830101
2,Name1,Family1,19790122
3, Name2,Family2,20071101
4, Name3,Family3,20040202


۳- در این مرحله اسکریپت زیر را اجرا کنید تاداده ها از روی فایل مورد نظر روی جدول بارگزاری شود. توجه داشته باشید که اگر خطایی در حین انجام این کار رخ دهد فقط همان سطر وارد نمیشود و کار ادامه میابد.


BULK INSERT CSVTest
FROM 'c:\csvTest.txt'
WITH
(
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
)

GO


۴-توسط اسکریپت زیر محتوای جدول را چک کنید.


SELECT *
FROM CSVTest
GO


۵- در انتها هم میتوانید این جدول تستی را از پایگاه داده حذف نمایید.


Drop Table CSVTest
GO