【问题标题】:Import CSV to SQL Table using BCP cmd utility使用 BCP cmd 实用程序将 CSV 导入 SQL 表
【发布时间】:2012-03-25 13:10:03
【问题描述】:

我的源 CSV 是逗号分隔的。

例子

Col1, Col2, Col3

目标 SQL 表

Col1, Col2, Col3, Col4, Col5(Col4 和 Col5 类似于审计列)

所以当我执行 bcp 导入时,这些 Col4 和 Col5 是否可以设置为一些默认值,或者我应该在执行 bcp cmd 之前对数据/源文件进行按摩以包含这些。

这是首选方式。

使用 SSIS 读取源/派生审计列并映射到目标。

或任何其他正确的方式。

【问题讨论】:

    标签: ssis bulkinsert bcp


    【解决方案1】:

    我认为你有几个选择:

    1. 更改目标表的架构,以在不会使用导入文件中的值更新的两列上包含 DEFAULT 约束(如果您不需要它们,则稍后将其删除

    2. 构建一个 SSIS 包——它所花费的时间可能与您使用 bcp 在 Internet 上搜索解决方案所花费的时间大致相同

    3. 尝试使用 BULK INSERTsqlcmd.exe 或 SQL Server Management Studio 并添加默认值 (SELECT c1, c2, c3, 'My default', GETDATE() FROM OPENROWSET('MSDASQL', 'Driver={Microsoft Text Driver (*.txt; *.csv)}; DefaultDir=C:\Path\To\Folder\With\CSV;','SELECT * FROM MyCsv.csv'))

    【讨论】:

      猜你喜欢
      • 2020-05-07
      • 2010-10-29
      • 2016-10-29
      • 2020-04-06
      • 2012-08-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多