CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  MS-SQL Server >  基础类

求助:txt文本导入sql server

楼主mib3000(-_-!!!)2005-07-26 14:10:06 在 MS-SQL Server / 基础类 提问

解决马上结贴  
   
  表结构:  
  create   table   tmp  
      (  
          a   char   not   null   ,  
          b   integer,  
          c   char(14)  
      )  
  文本格式:  
  10527272|3960|20050701000058|  
  10527298|6000|20050701000421|  
  10527302|6000|20050701001340|  
  字段间用“|”分隔,记录间用回车分隔 问题点数:100、回复次数:6Top

1 楼phantomMan()回复于 2005-07-26 14:15:31 得分 20

BULK   INSERT   datebasename..tablename   FROM   'c:\ddd.txt'  
  WITH   (  
        DATAFILETYPE   =   'char',  
        FIELDTERMINATOR   =   '|',  
        ROWTERMINATOR   =   '\n'  
  )  
  Top

2 楼phantomMan()回复于 2005-07-26 14:17:19 得分 20

10527272|3960|20050701000058|  
   
  这是一条记录吗?   结尾还有   '|'   ????Top

3 楼phantomMan()回复于 2005-07-26 14:22:27 得分 20

create   table   tablet(  
  A   nvarchar(100),  
  B   nvarchar(100),  
  C   nvarchar(100)  
  )  
   
   
  BULK   INSERT   ColinTest..tablet   FROM   'c:\ddd.txt'  
  WITH   (  
        DATAFILETYPE   =   'char',  
        FIELDTERMINATOR   =   '|',  
        ROWTERMINATOR   =   '\n'  
  )  
   
  select   *   from   tablet  
   
   
  ------------------------------------------------------------------------  
  A                       B                 C                                                                                                                                                                                                          
  ----------   ------   ---------------  
  10527272       3960       20050701000058|  
  10527298       6000       20050701000421|  
  10527302       6000       20050701001340|  
  10527272       3960       20050701000058|  
  10527298       6000       20050701000421|  
  10527302       6000       20050701001340|  
   
  (所影响的行数为   6   行)  
  --------------------------------产生六行数据是因为你最后有   '|'   造成的  
  Top

4 楼neuafei(阿飞)回复于 2005-07-26 14:25:05 得分 20

选择目的表,右键菜单有:导入数据,数据源选择文本文件,找到文本文件,下一步,选择带分隔符,文本限定符输入“|”,下一步,完成即可,注意,因为你的文本文件最后多一个|,所以,建库请最后增加一个字段,允许为空,导入后再删除该字段即可。Top

5 楼phantomMan()回复于 2005-07-26 14:27:48 得分 20

如果后面有'|',改为下面得就可以得到3行  
   
  BULK   INSERT   ColinTest..tablet   FROM   'c:\ddd.txt'  
  WITH   (  
        DATAFILETYPE   =   'char',  
        FIELDTERMINATOR   =   '|',  
        ROWTERMINATOR   =   '|\n'  
  )  
   
  Top

6 楼mib3000(-_-!!!)回复于 2005-07-26 19:18:54 得分 0

thx   结贴Top

相关问题

  • 将文本文件导入SQL
  • SQL语句导入导出TXT文本的问题,帮我纠正一下格式
  • 高分求将文本(txt)文件导入到SQL数据库的代码!!!!!在线等!!!!!!!!!!!!!!!!!!
  • 如何用SQL server中的导入数据功能导入文本文件?(急!)
  • 用DTS将Execl文件导入Sql,数值与文本同一列,文本无法导入
  • 关于用SQL*LOADER从文本中往oracle中导入数据
  • 请教用Dephi6.0把文本数据导入SQL Server2000中?
  • 求助:用sql语句导入文本文件!在线急等!
  • 怎么把.txt文本导入到List中去?
  • 如何将.txt文本导入Access,急!急!

关键词

  • datafiletype
  • rowterminator
  • fieldterminator
  • tablet
  • ddd
  • txt
  • nvarchar
  • bulk insert
  • char

得分解答快速导航

  • 帖主:mib3000
  • phantomMan
  • phantomMan
  • phantomMan
  • neuafei
  • phantomMan

相关链接

  • SQL Server类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo