继续: .dat文件通过语句导入的问题,70分全部家当!

zdrone 2006-07-18 09:57:47
文件在
http://zdrone.xinwen365.com/zd/
第一个hotrec06070802 下载后加个.dat 文件名 也可通过ie直接打开
第二个hotrec06070802.jpg 因为空间不支持rar文件我就改成了jpg格式 下载后改成rar解压缩就可以了。
两个其实是一样的文件
http://community.csdn.net/Expert/topic/4885/4885906.xml?temp=.1600305 这个是我昨天发的
可是还没有解决好。哪位大哥能帮我看看啊?
急死个人了


hotrec06070802.dat文件 数据如下:
2006-07-08 01:40:53 num:13182762083 lac:13073 ci:31291 mtype:1 stype:2
2006-07-08 02:10:40 num:13063680277 lac:13073 ci:31586 mtype:2 stype:10
2006-07-08 02:10:47 num:13063967797 lac:13073 ci:32473 mtype:1 stype:2
2006-07-08 02:10:54 num:13013683122 lac:13073 ci:32861 mtype:1 stype:2
2006-07-08 02:10:55 num:13115070636 lac:13073 ci:35462 mtype:1 stype:2
2006-07-08 02:10:59 num:13151902450 lac:13073 ci:32471 mtype:1 stype:2
2006-07-08 02:11:00 num:13093004500 lac:13073 ci:31292 mtype:1 stype:2
2006-07-08 01:41:13 num:13057318007 lac:13073 ci:36232 mtype:1 stype:2
....



使用DTS导入
1.选择数据源 数据源:文本文件 文件名:D:\无线增值业务\hotrec06070802.dat
2.选择文件格式 文件类型:ANSI 行分隔符:{LF} 文本限定符:无 跳过行:0
3.制定列分隔符 其他: (空格)
然后一步步后导入可以正常导入。
生成表

col001 col002 col003 col004 col005 col006 col007
2006-07-08 02:10:54 num:13013683122lac:13073 ci:32861 mtype:1stype:2
2006-07-08 02:11:51 num:13197638529lac:13073 ci:31402 mtype:1stype:2
2006-07-08 02:11:52 num:13063776166lac:13073 ci:31402 mtype:1stype:2
2006-07-08 02:11:59 num:13093098348lac:13073 ci:31142 mtype:1stype:2
2006-07-08 02:12:59 num:13057380090lac:13073 ci:32281 mtype:1stype:2
2006-07-08 02:13:05 num:13235199355lac:13073 ci:32853 mtype:1stype:2
2006-07-08 02:13:59 num:13157314051lac:13073 ci:31585 mtype:1stype:2
2006-07-08 02:01:21 num:13196591269lac:13073 ci:31403 mtype:1stype:2
2006-07-08 01:46:34 num:13101969789lac:13073 ci:35211 mtype:1stype:2
2006-07-08 02:16:43 num:13182775515lac:13073 ci:31336 mtype:1stype:2
2006-07-08 01:47:42 num:13092524662lac:13073 ci:32201 mtype:1stype:2
2006-07-08 02:18:38 num:13205226225lac:13073 ci:32351 mtype:1stype:2
2006-07-08 01:50:07 num:13013687319lac:13073 ci:31293 mtype:1stype:2
2006-07-08 02:20:33 num:13003322454lac:13073 ci:31293 mtype:1stype:2
2006-07-08 01:51:25 num:13093007563lac:13073 ci:31407 mtype:2stype:10
2006-07-08 01:52:12 num:13093007563lac:13073 ci:31407 mtype:2stype:10
2006-07-08 01:52:13 num:13093098348lac:13073 ci:31142 mtype:1stype:2
2006-07-08 02:22:11 num:13057318007lac:13073 ci:36232 mtype:1stype:2
2006-07-08 02:22:37 num:13093097397lac:13073 ci:31146 mtype:1stype:2
....

但是通过语句写不会 查了一下帮助写了一下
BULK INSERT local_Sybasetxtin FROM 'D:\无线增值业务\hotrec06070802.dat'
WITH (
DATAFILETYPE = 'char',
FIELDTERMINATOR = ' ',
ROWTERMINATOR ='\n'
)
提示
服务器: 消息 4866,级别 17,状态 66,行 1
大容量插入失败。数据文件中第 1 行、第 6 列的列太长。请确保正确地指定了字段终止符和行终止符。
服务器: 消息 7399,级别 16,状态 1,行 1
OLE DB 提供程序 'STREAM' 报错。提供程序未给出有关错误的任何信息。
语句已终止。


我估计是ROWTERMINATOR ='\n' 这个行分隔符有问题 可是不知道怎么改
...全文
227 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
billpu 2006-07-18
刚刚又下载了你的rar文件试了试 不是直接copy paste也有和你一样的问题,
:)
你可以用这个测试一下 可能是其他程序生成dat的时候换行的设置不一样,你可以尝试用16进制转换
BULK INSERT test FROM 'D:\无线增值业务\hotrec06070802.dat'
WITH (
DATAFILETYPE = 'char',
FIELDTERMINATOR = ' ',
ROWTERMINATOR ='0x0a'
)
回复
donwmufromdying 2006-07-18
分隔符FIELDTERMINATOR = ' ',不是''吧?
回复
zdrone 2006-07-18
为什么我的就不可以!!!!!!!!!!!!!!!

天啊!!!!!!!!!!!!!!!
回复
billpu 2006-07-18
就用你的数据 用同样的语句
(所影响的行数为 3160 行)
回复
相关推荐
发帖
MS-SQL Server
创建于2007-09-28

3.3w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
帖子事件
创建了帖子
2006-07-18 09:57
社区公告
暂无公告