BCP故障排除和格式文件错误

问题描述 投票:0回答:1

首先,抱歉这篇长篇文章。我想彻底了解我的示例/数据,这篇文章的大部分就是这样。

我在新工作中使用格式文件(.fmt)继承了批量导入过程。这个过程是由我之前在这里工作的人创建的,我的工作就是学习这个过程(并立即修复)。我对这些东西知之甚少,但我做了一些研究。几个星期后,我还没有真正到任何地方。这是我正在使用的...

--BCP命令将数据从C:\ Desktop \ 20180629_2377167_PR_NP.txt导入表LA_Temp.dbo.ProvReg

bcp LA_Temp.dbo.ProvReg IN C:\ Desktop \ 20180629_2377167_PR_NP.txt -f C:\ Desktop \ PROVREG.FMT -T -S SERVERNAME -k -m 1000000

- 表格格式文件的表格结构:

SELECT [NPI]
  ,[D1]
  ,[EntityType]
  ,[D2]
  ,[ReplaceNPI]
  ,[D3]
  ,[ProvName]
  ,[D4]
  ,[MailAddr1]
  ,[D5]
  ,[MailAddr2]
  ,[D6]
  ,[MailCity]
  ,[D7]
  ,[MailState]
  ,[D8]
  ,[MailZip]
  ,[D9]
  ,[MailCountry]
  ,[D10]
  ,[MailPhone]
  ,[D11]
  ,[MailFax]
  ,[D12]
  ,[LocAddr1]
  ,[D13]
  ,[LocAddr2]
  ,[D14]
  ,[LocCity]
  ,[D15]
  ,[LocState]
  ,[D16]
  ,[LocZip]
  ,[D17]
  ,[LocCountry]
  ,[D18]
  ,[LocPhone]
  ,[D19]
  ,[LocFax]
  ,[D20]
  ,[Taxonomy1]
  ,[D21]
  ,[Taxonomy2]
  ,[D22]
  ,[Taxonomy3]
  ,[D23]
  ,[OtherProvID]
  ,[D24]
  ,[OtherProvIDType]
  ,[D25]
  ,[ProvEnumDate]
  ,[D26]
  ,[LastUpdate]
  ,[D27]
  ,[DeactivateRC]
  ,[D28]
  ,[DeactivateDate]
  ,[D29]
  ,[ReactivateDate]
  ,[D30]
  ,[Gender]
  ,[D31]
  ,[License]
  ,[D32]
  ,[LicenseState]
  ,[D33]
  ,[AuthorizedContact]
  ,[D34]
  ,[ContactTitle]
  ,[D35]
  ,[ContactPhone]
  ,[D36]
  ,[PanelOpen]
  ,[D37]
  ,[Language1]
  ,[D38]
  ,[Language2]
  ,[D39]
  ,[Language3]
  ,[D40]
  ,[Language4]
  ,[D41]
  ,[Language5]
  ,[D42]
  ,[AgeRestrict]
  ,[D43]
  ,[PCPMax]
  ,[D44]
  ,[PCPActual]
  ,[D45]
  ,[PCPAll]
  ,[D46]
  ,[EnrollInd]
  ,[D47]
  ,[EnrollDate]
  ,[D48]
  ,[FamilyOnly]
  ,[D49]
  ,[SubSpec1]
  ,[D50]
  ,[SubSpec2]
  ,[D51]
  ,[SubSpec3]
  ,[D52]
  ,[ContractName]
  ,[D53]
  ,[ContractBegin]
  ,[D54]
  ,[ContractEnd]
  ,[D55]
  ,[Parish1]
  ,[D56]
  ,[Parish2]
  ,[D57]
  ,[Parish3]
  ,[D58]
  ,[Parish4]
  ,[D59]
  ,[Parish5]
  ,[D60]
  ,[Parish6]
  ,[D61]
  ,[Parish7]
  ,[D62]
  ,[Parish8]
  ,[D63]
  ,[Parish9]
  ,[D64]
  ,[Parish10]
  ,[D65]
  ,[Parish11]
  ,[D66]
  ,[Parish12]
  ,[D67]
  ,[Parish13]
  ,[D68]
  ,[Parish14]
  ,[D69]
  ,[Parish15]
  ,[D70]
  ,[PCPInd]
  ,[D71]
  ,[DisplayOnline]
  ,[D72]
  ,[ExpAgeRestrict]
  ,[D73]
  ,[Suffix]
  ,[D74]
  ,[Title]
  ,[D75]
  ,[PrescriberInd]
  ,[Spaces]
  ,[End]

来自[LA_Temp]。[dbo]。[ProvReg]

- 示例文本文件数据(这是一行)9999999999 ^ 0 ^ ^ ^ 3800 HMA BLVD STE 305 ^ ^ METAIRIE ^ LA ^ 70006 ^ ^ 5048729679 ^ ^ 3800 HMA BLVD ^ ^ METAIRIE ^ LA ^ 70006 ^ ^ 9999999999 ^ ^ 207Q00000X ^ ^ ^ 0000000 ^ 2001 ^ ^ 00000000 ^ ^ 00000000 ^ 00000000 ^ F ^ ^ LA ^ ^ ^ ^ N ^ 1 ^ 0 ^ 0 ^ 0 ^ 0 ^ 2 ^ 00000 ^ 00000 ^ 00000 ^ ^ ^ ^ ^ ^ ^ 000000000000000000000000000000 ^ 00000000 ^ 00000000 ^ 26 ^ 00 ^ 00 ^ 00 ^ 00 ^ 00 ^ 00 ^ 00 ^ 00 ^ 00 ^ 00 ^ 00 ^ 00 ^ 00 ^ 00 ^ 0 ^ 0 ^接受年龄为000-000 ^ ^ MD的患者^ ^

- 格式文件

11.0

153

1 SQLCHAR 0 40“\ t”1 NPI SQL_Latin1_General_Pref_CP1_CI_AS

2 SQLCHAR 0 2“\ t”2 D1 SQL_Latin1_General_Pref_CP1_CI_AS

3 SQLCHAR 0 2“\ t”3 EntityType

......一路......

153 SQLCHAR 0 2“\ r \ n”153结束

我已经更改了目录,servername和一些文本文件数据以保持安全性,但是,它非常相似。

这是我遇到的问题:在我刚刚从SQL表创建的格式文件中使用“\ t”,我收到错误:[Microsoft] [SQL Server Native Client 11.0]在BCP数据文件中遇到意外的EOF 。

如果我将其更改为“”或“^”(因为我认为它应该是因为文本文件使用胡萝卜分隔符),行开始复制时出现错误[Microsoft] [SQL Server Native Client 11.0]字符串数据,右截断SQLState = 22001,NativeError = 0. BCP复制失败。

如果有人可以请指出我正确的方向来解决这个问题,或者如果你看到任何不合适的地方,请告诉我。正如我所提到的,我已经有一段时间了,可以使用我能得到的任何建议。不幸的是,我公司没有人可以问这个问题。

sql format bcp sqlbulkcopy
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.