如何从 bcp 添加 sysdate

How to add sysdate from bcp

我有一个具有以下示例数据格式的 .csv 文件:

REFID|PARENTID|QTY|DESCRIPTION|DATE
AA01|1234|1|1st item|null
AA02|12345|2|2nd item|null
AA03|12345|3|3rd item|null
AA04|12345|4|4th item|null

要将上述文件加载到 table 我正在使用以下 BCP 命令:

/bcp $TABLE_NAME in $FILE_NAME -S $DB_SERVER -t "|" -F 1 -U $DB_USERNAME -d $DB_NAME

我想在这里查看的内容如下所示(从 bcp 添加 sysdate 而不是 null)

AA01|1234|1|1st item|3/16/2020
AA02|12345|2|2nd item|3/16/2020
AA03|12345|3|3rd item|3/16/2020
AA04|12345|4|4th item|3/16/2020

更新: 我能够通过 -F 1 选项通过@Jamie 回答排除 header,但在插入日期方面寻求帮助与BCP。尝试查看一些旧的问答,但到目前为止没有运气..

要排除单个 header 记录,您可以使用 -F 选项。这将告诉 BCP 文件中的哪一行是开始加载的第一行。对于您的示例,-F2 应该可以正常工作。但是,您的命令还有其他问题。查看评论。

无法像您所说的那样使用BCP 命令引入新数据。在将数据复制到 table 时,BCP 无法引入日期值。为此,我建议您的日期列使用默认值,或者首先将原始数据加载到没有日期列的 table 中,然后您可以在后期处理中引入您认为合适的日期值。