我在SSIS中创建了一个包,最终必须在我们的数据库中批量插入一定数量的csv文件。 它适用于所有csv文件,除了一个。 必须在下表中插入此csv文件:
USE [CSDW_Base] GO
/****** Object: Table [dbo].[CSDW_CSV_Diensten] Script Date: 06/16/2015 09:45:40 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[CSDW_CSV_Diensten](
[Dienst] [nvarchar](50) NULL,
[Dienstsoortcode] [nvarchar](5) NULL,
[Van] [datetime] NULL,
[Tot] [datetime] NULL,
[Weekend] [bit] NULL,
[Feestdag] [bit] NULL
) ON [PRIMARY]
GO
如您所见,最后一列是[位]。 当我尝试运行包时,它会出现以下错误: 错误:第2行第6列(Feestdag)的批量加载数据转换错误(类型不匹配或指定代码页的无效字符)。
对于批量插入,我使用此查询:
BULK INSERT InTableName FROM'K:\ USER \ MyName \ csv package \ Csv bestanden'WITH(FIRSTROW = 2,FIELDTERMINATOR =';',ROWTERMINATOR =' \ r \ N')
我很确定它与'隐形字符'或类似的东西有关,因为如果我以[Tot] [datetime]是最后一列的方式更改表格和CSV,那就错了
你能帮我弄清楚为什么我的包认为我试图在Bit列中插入的不仅仅是'1'或'0'吗?而且,你能告诉我如何解决它:)
感谢。