وارد کردن داده های یک فایل CSV در SQL Server
پنج شنبه 23 مهر 1388 3:45 AM
شاید بعضی اوقات نیاز پیدا کرده باشید که داده هایی را در جداول 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