在 BCP.FMT 中查找 T-SQL 批量插入的正确数据类型标记

发布于 2024-12-12 05:21:49 字数 351 浏览 0 评论 0原文

我有一个 bcp.fmt 文件,用于 T-SQL 中的批量插入(比 SSIS 更易于传输和用户可读),但不知道目标表中 DATETIME 列的 SQLCHAR 等效项(奇怪的是,我什至不知道从谷歌得到答案)。因此,我收到此错误:

Msg 4864,Level 16,State 1,Line 1 第 1 行第 4 列 (ModifyDate) 的批量加载数据转换错误(类型不匹配或指定代码页的字符无效)。

这不是一个不合理的错误消息 - 我只需要找到等效的目标数据类型引用,对吧?

从下面的 FMT 文件中摘录:

4 SQLCHAR 0 8 ";" 4 修改日期 SQL_Latin1_General_CP1_CI_AS

I have a bcp.fmt file for a bulk insert in T-SQL (more transportable and user-readable than SSIS), but don't know the SQLCHAR equivalent for a DATETIME column in my destination table (bizarrely, I can't even get an answer from Google). As a consequence, I'm getting this error:

Msg 4864, Level 16, State 1, Line 1
Bulk load data conversion error (type mismatch or invalid character for the specified codepage) for row 1, column 4 (ModifyDate).

It's not an unreasonable error msg - I just need to find the equivalent target data type reference, right?

Extract from FMT file below:

4 SQLCHAR 0 8 ";" 4 ModifyDate SQL_Latin1_General_CP1_CI_AS

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

时光与爱终年不遇 2024-12-19 05:21:49

使用 SQLCHAR 但为输入设置正确的日期格式。例如 SET DATEFORMAT dmy;

SET DATEFORMAT (Transact-SQL)

或者,如果您控制输入文件,则使用 ISO 8601 格式来实现明确的输入。

Use SQLCHAR but set the correct dateformat for the input. e.g. SET DATEFORMAT dmy;

SET DATEFORMAT (Transact-SQL)

Or if you control the input file then use an ISO 8601 format for unambiguous input.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文