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 \ RN CR \ LF LF \ CR和各种十六进制代码。我在Excel中创建了该文件,并将其另存为CSV,但无效。我将数据复制到记事本中,并且无法识别换行/回车。
我在做什么错?
P.S.我已经删除了代码示例中soem的列,val列与名称不同,[Val_0000]NVARCHAR(15) NULL
是最后一列。