首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >第1行第1列(ID)的大容量加载数据转换错误(指定代码页的类型错配或无效字符)

第1行第1列(ID)的大容量加载数据转换错误(指定代码页的类型错配或无效字符)
EN

Stack Overflow用户
提问于 2020-11-22 08:39:58
回答 2查看 2K关注 0票数 0

当我试图将文本文件导入我的数据库时,我会得到转换错误。下面是我收到的错误消息:

Msg 4864,级别16,State 1,行1大容量加载数据转换错误(指定代码页的类型错配或无效字符),第1行,第1列(ID)。

Msg 4864、级别16、状态1、第1行大容量加载数据转换错误(指定代码页的类型错配或无效字符),第2行,第1列(ID)。

Msg 4864、级别16、状态1、第1行大容量加载数据转换错误(指定代码页的类型错配或无效字符),第3行,第1列(ID)。

Msg 4864、级别16、状态1、第1行大容量加载数据转换错误(指定代码页的类型错配或无效字符),第4行,第1列(ID)。

Msg 4864,级别16,状态1,第1行大容量加载数据转换错误(指定代码页的类型错配或无效字符),第5行,第2列(日期)。

Msg 4864、级别16、状态1、第1行大容量数据转换错误(指定代码页的类型错配或无效字符),用于第6行,第1列(ID)。

Msg 4864、级别16、状态1、第1行大容量加载数据转换错误(指定代码页的类型错配或无效字符)第7行第1列(ID)。

Msg 4864,级别16,状态1,第1行,大容量加载数据转换错误(指定代码页的类型错配或无效字符)第8行,第1列(ID)。

Msg 4864、级别16、状态1、第1行大容量加载数据转换错误(指定代码页的类型错配或无效字符)第9行第1列(ID)。

Msg 4864,级别16,状态1,第1行,大容量加载数据转换错误(指定代码页的类型错配或无效字符),第10行,第1列(ID)。

这里是我的表查询代码:

代码语言:javascript
复制
CREATE TABLE [dbo].[testpostingvoucher](
    [ID] [int] NULL,
    [date] [date] NULL,
    [checkdigit] [varchar](max) NULL,
    [credit] [int] NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO

这里是我的大容量插入查询代码:

代码语言:javascript
复制
bulk insert [dbo].[testpostingvoucher]
from 'D:\HBL Scrolls\testbulk.txt'
with
    (
        fieldterminator = '|',
        rowterminator = '.00|'
    )
go

这里是文本文件中的示例数据:

代码语言:javascript
复制
YOUR ACCOUNT STATEMENT                                             ACCOUNT NO    : 0042-79000275-03 OF
   FOR THE PERIOD ENDING: FEB01,2020 TO JUN30,2020                                    STATE LIFE, KARACHI BRANCH
   CDGK-MAIN COLLECTION A/C                                           ACCOUNT TYPE  : NON-CHEQUEING A/C.
   CMD HBL STATE LIFE CORPORATE CENTRE                                CURRENCY      : Pakistan Rupee
   STATE LIFE BUILDING NO-9                                           PRINTING DATE :  3-11-20
   ZIA UDDIN AHMED ROAD                                               FREQUENCY     : INTERIM / DUPLICATE
   KARACHI                                                            PAGE NO       :    1

                                                              

    USER          : HJ6201
   -----------------------------------------------------------------------------------------------------------------
   |DATE   |VALUE  |PARTICULARS                        |             DEBIT|            CREDIT|             BALANCE |
   
|-------|-------|-----------------------------------|------------------|------------------|---------------------|
   |       |       |BROUGHT FORWARD                    |                  |                  |                 .00 |
   |01FEB20|       |CMD CREDIT        0067031010700068 |                  |          2,042.00|            2,042.00 |
   |       |       |14C.D.G.KC012386O00001             |                  |                  |                     |
   |       |       |2386                               |                  |                  |                     |
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-11-22 15:56:20

似乎有些值正在尝试插入到不接受该值的列中。因此,在ID列(需要和INT )中,值中可能包含另一个字符。您可以尝试将每一列设置为NVARCHAR(max),加载所有数据,然后使用isnumberic()查询并查看列中哪些不是INT。

在主testpostingvoucher主GO上创建表dbo.testpostingvoucher

票数 0
EN

Stack Overflow用户

发布于 2021-02-10 05:43:19

那排终结者在我看来很奇怪。

代码语言:javascript
复制
BULK INSERT testpostingvoucher
FROM 'E:\\file.txt' --location with filename
WITH
(
   FIELDTERMINATOR = '\t',
   ROWTERMINATOR = '\n'
)
GO

您的数据实际上从哪一行开始?有一个可选的参数来选择FIRSTROW。

代码语言:javascript
复制
TRUNCATE TABLE testpostingvoucher

BULK INSERT testpostingvoucher
FROM 'E:\ETLFiles\tsp1.txt'
WITH (
      FIELDTERMINATOR = '\t',
     ROWTERMINATOR = '\n',
     FIRSTROW=15
)

SELECT *
FROM testpostingvoucher

有关更多想法,请参见下面的链接。

https://www.mssqltips.com/sqlservertip/5345/nonstandard-delimiters-for-columns-and-rows-using-sql-server-bulk-insert/

https://www.mssqltips.com/sqlservertip/6041/sql-server-staging-table-vs-temp-table/

您可以将要插入的表中的所有数据类型设置为(暂存表)、varchar(max)、加载数据,然后将所有内容复制到最终的强类型表(生产表)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64952131

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档