首先,对于冗长的帖子,我们深表歉意。我想对示例/数据进行详尽的介绍,而这篇文章的大部分内容就是如此。
我在新工作中使用格式文件(.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 ^ ^ ^ ^ ^ ^ 000000000000000000000000000000000000 ^ 00000000 ^ 00000000 ^ 26 ^ 00 ^ 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结束
为了维护安全性,我已经更改了目录,服务器名和一些文本文件数据,但是,这非常相似。
这是我遇到的问题: 在刚从SQL表创建的格式文件中使用“ \ t”时,出现错误:[Microsoft] [SQL Server Native Client 11.0] BCP数据文件中遇到意外的EOF。
如果我将其更改为“”或“ ^”(我认为应该是因为文本文件使用胡萝卜定界符),则行开始复制并出现错误 [Microsoft] [SQL Server Native Client 11.0]字符串数据,右截断SQLState = 22001,NativeError =0。BCP复制失败。
如果任何人都可以在此处为我指明正确的方向以解决此问题,或者如果发现有任何异常,请通知我。正如我提到的,我已经来过一段时间了,可以使用我得到的任何建议。不幸的是,我公司没有人可以问这个问题。