如何从与表没有相同列的excel文件批量插入?

时间:2017-10-19 10:57:34

标签: sql sql-server excel

我有一个包含这些列数据的Excel文件:ID,名称,电话号码。但SQL中的表也采用了地址 - 这不是excel文件中的地址。这导致以下错误:

  

列地址的批量加载数据转换错误(类型不匹配或指定代码页的无效字符)

如果我从SQL Server中的表中删除地址列,导入时不会出现此错误。我很好,导入后地址字段为空。

这是我的导入SQL:

BULK INSERT tableName FROM filePath
WITH (
Datafiletype = 'char',
Fieldterminator = '\t',
Rowterminator = '\n',
Firstrow = 2
)

我正在使用SQL Server。

1 个答案:

答案 0 :(得分:3)

您可以创建视图:

create view v_tableName as
    select id, name, phone_number
    from tableName;

然后将文件加载到视图中:

BULK INSERT v_tableName FROM filePath
    WITH (Datafiletype = 'char',
          Fieldterminator = '\t',
          Rowterminator = '\n',
          Firstrow = 2
         );