2016-07-26 13 views
0

CSVファイルをSQL Server 2014に一括して挿入しようとしていますが、CSVファイルの行末文字が認識されないことがありました。SQL Server 2014 CSVインポートで行末または行末が認識されない

私が手にエラーがある:

メッセージ4864、レベル16、状態1、プロシージャspTempImport、行のためのライン74バルクロード データ変換エラー( 指定されたコードページのための型の不一致または無効な文字) 1、列51(Val_0000)。

私はここで他の投稿を読んで、それらを試してみたところ、動作させることはできません。次のように

SPROCがある:私が使用しようとしている

USE [xxxxxxx] 
GO 
/****** Object: StoredProcedure [dbo].[spTempImport] Script Date: 26/07/2016 19:59:56 ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 

ALTER PROCEDURE [dbo].[++++++++] 

AS 
BEGIN 

SET NOCOUNT ON 

CREATE TABLE #tmp (
     --[BatchID] NVARCHAR(MAX) NOT NULL, 
     [ID] NVARCHAR(50) NOT NULL, 
     [Serial] NVARCHAR(30) NOT NULL, 
     [Date] VARCHAR(15) NOT NULL, 
     [Val_0030]NVARCHAR(15) NULL,  
     [Val_0000]NVARCHAR(15) NULL 
    ) 

    BULK INSERT #tmp 
    FROM 'C:\Temp\test1.csv' 
    WITH 
    (
     FIRSTROW = 1, 
    FIELDTERMINATOR = ',', 
    ROWTERMINATOR = '\r\n' 
) 


SELECT * FROM #tmp 

\ R \ n \ n \ R \ CR \ LF LF \ CRおよび種々16進コードRN。私はExcelでファイルを作成し、CSVとして保存しても機能しませんでした。私はメモ帳にデータをコピーし、それはラインフィード/キャリッジリターンを認識しません。

私は間違っていますか?

P.S.私はコード例の列のsoemを削除しました、valの列は名前と同じ以外であり、[Val_0000]NVARCHAR(15) NULLは最終的な列です。

答えて

0

私はSPROCの列をVARCHAR(MAX)に設定していました。

関連する問題