2012-01-26 8 views
1

1)CSVファイルではなく、CSVファイルではないID列が自動的に割り当てられるように、BulkInsertをテーブルに追加できますか?ID列(T-SQL)を持つテーブルにBulkInsert

2)BulkInsertを実行しているテーブルには、読み込んでいるフラットファイルと同じ順序で同じ列を持たなければならないという規則がありますか?

これは私がやろうとしていることです。私はアイデンティティを持っているため、エラーがあるかなり確信している

Msg 4864, Level 16, State 1, Line 3 Bulk load data conversion error (type mismatch or invalid character for the specified codepage) for row 1, column 1 (rowID).

:あまりにも多くのフィールドは

BULK INSERT ServicerStageACS 
    FROM 'C:\POC\DataFiles\ACSDemo1.csv' 
    WITH (FORMATFILE = 'C:\POC\DataFiles\ACSDemo1.Fmt'); 
GO 
SELECT * FROM ServicerStageACS; 

エラー...すべてのものを含めることができます。

FMTは次のように起動します:

9.0 
4 
1  SQLCHAR  0  7  ","  1  Month  SQL_Latin1_General_CP1_CI_AS 
2  SQLCHAR  0  100  ","  2  Client  SQL_Latin1_General_CP1_CI_AS 
+0

http://dba.stackexchange.com/ –

答えて

2

同僚は、ビューに一括挿入を行うには簡単だったことをお勧めします。ビューには、IDフィールド、またはロードされない他のフィールドは含まれません。

truncate table ServicerStageACS 
go 
BULK INSERT VW_BulkInsert_ServicerStageACS 
    FROM 'C:\POC\DataFiles\ACSDemo1.csv' 
    WITH 
     (
     FIELDTERMINATOR = ',', 
     ROWTERMINATOR = '\n' 
     ) 

GO 
SELECT * FROM ServicerStageACS; 
関連する問題