PDA

View Full Version : import کردن csv به sql



dr.pantagon
سه شنبه 16 تیر 1388, 19:22 عصر
سلام من می خوام یک فایل csv رو به دیتابس خودم import کنم چه جوری و باید چه کار کنم اگر کسی نمونه کد یا dll یا ocx چیزی داره لطفا بزاره

متشکر
( سرچ هم کردم ولی چیزی نبود )

dr.pantagon
چهارشنبه 17 تیر 1388, 14:36 عصر
کسی نبود ؟

explod_javad
چهارشنبه 17 تیر 1388, 15:43 عصر
میخای داینامیک به بانک اضافه کنی ؟

dr.pantagon
چهارشنبه 17 تیر 1388, 16:57 عصر
می خوام براش برنامه نویسی کنم که هروقت خواستم فقط فایل csv یا هر فایلی که میشه رو فقط select کنم و ارسال رو بزنم بعد text هایی که توی فایل است به دیتابیس اضاف بشه

من 3 تا فیلد بیشتر هم ندارم که تو فایل csv این جوری می شه
serial,username,hours
و ممکن تو یک فایل 100 تا از این نو داده زیر هم و مرتب قرار داشته باشن
serial,username,hours
serial,username,hours
serial,username,hours
.
.
.
serial,username,hours

adinochestva
چهارشنبه 17 تیر 1388, 17:14 عصر
This is very common request recently – How to import CSV file into SQL Server? How to load CSV file into SQL Server Database Table? How to load comma delimited file into SQL Server? Let us see the solution in quick steps.
CSV stands for Comma Separated Values, sometimes also called Comma Delimited Values.
Create TestTable
USE TestData
GO
CREATE TABLE CSVTest
(ID INT,
FirstName VARCHAR(40),
LastName VARCHAR(40),
BirthDate SMALLDATETIME)
GO
Create CSV file in drive C: with name csvtest.txt with following content. The location of the file is C:\csvtest.txt
1,James,Smith,19750101
2,Meggie,Smith,19790122
3,Robert,Smith,20071101
4,Alex,Smith,20040202
http://www.pinaldave.com/blogfolder/csv1.gif
Now run following script to load all the data from CSV to database table. If there is any error in any row it will be not inserted but other rows will be inserted.
BULK
INSERT CSVTest
FROM ‘c:\csvtest.txt’
WITH
(
FIELDTERMINATOR = ‘,’,
ROWTERMINATOR = ‘\n’
)
GO
Check the content of the table.
SELECT *
FROM CSVTest
GO
Drop the table to clean up database.
SELECT *
FROM CSVTest
GO
http://www.pinaldave.com/blogfolder/csv2.gif
ref : http://blog.sqlauthority.com/2008/02/06/sql-server-import-csv-file-into-sql-server-using-bulk-insert-load-comma-delimited-file-into-sql-server/

dr.pantagon
چهارشنبه 17 تیر 1388, 17:42 عصر
عالی بود تستش می کنم متشکر

saymon
چهارشنبه 31 فروردین 1390, 21:06 عصر
سلام

من دارم همین کار رو انجام میدم و به ازای همین حالات درست کار میکنه اما زمانی که داده ی من اینطوریه error میده :


'5,9', 16, 0
'99و98و77', 16, 0

در واقع زمانی که میخوام توی یک فیلد از ' ' برای درج چند عدد استفاده کنم که با این کار همه رو یه دسته بگیره و توی فیلد مورد نظر وارد کنه ..ارور میده

من عجله دارم لطفا یک نفر منو راهنمایی کنه که چه طوری برای اطلاعات این چنینی میتونم از این دستور استفاده کنم .