如何将文本文件准确无误的导进SQL库?

ItOldHorse 2003-05-09 08:17:35
我将一个文本文件导进一个Sql数据库A1(只有一个字段Q),然后将A1数据库的Q字段采取截取法将其记录再导进A2数据库(字段为Q1(Q1,Q2,Q3)。此文本文件内容为

文本第1段 文 本 第 2 段 文本第3段

A00100200中国船舶工业总公司 20030203
A00200345中国船舶 19990202
A00200100中Qw 19980202

其中文本第1段长度为9
文本第2段长度为40
文本第3段长度为8

...全文
32 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
blactte 2003-05-09
  • 打赏
  • 举报
回复
对于格式不严格的数据文本,我个人的经验是先将文本倒入ACCESS数据库,因为ACCESS数据库对数据行不是严格对齐的文本数据的倒入作的最好,可以通过标尺手工调整字段的宽度
倒入过程很方便,数据也很准
然后在将ACCESS中的数据倒入SQL SERVER
yoki 2003-05-09
  • 打赏
  • 举报
回复
1:
create table a1(col varchar(8000))
exec master..xp_cmdshell 'bcp 库名..A1 out 路径\文本名.txt -c -S服务器名 -Usa -P密码'
2:
insert into a2
select left(a1.col,9) as 编号,
substring(a1.col,len(a1.col)-9-8) as 公司名称,
right(a1.col,8) as 日期
from a1
psxfghost 2003-05-09
  • 打赏
  • 举报
回复
最不易出错的方法:
你手工用DTS向导导入数据库
psxfghost 2003-05-09
  • 打赏
  • 举报
回复
一般文本都是从数据库导出的,所以都有一定的分割格式
你没必要采取截取法,直接用bcp就可以导入A2了
exec master..xp_cmdshell 'bcp 库名..A2 out 路径\文本名.txt -c -S服务器名 -Usa -P密码'
wgy2008 2003-05-09
  • 打赏
  • 举报
回复
数据不多时你可以在想要倒入的格式之间加空格然后在倒入
如:
A00100200 中国船舶工业总公司 20030203

34,837

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧