文本文件导入数据库~~~

vetica 2001-07-18 02:29:34
加精
恩~~~
怎么把文本文件的数据导入数据库呢?不是标准用tab分隔符分开的那种哦~~
每行的格式如下:
Mon Jul 09 11:44:09 2001 HTTP 10.1.1.99:1827--->211.100.17.6:80 638 391
~~~~~~~~~~~~~~ ~~~ ~~~
↑ ip地址               ↑A ↑B

我呢,要把里面的数据取出来,按照ip地址分开统计每个ip的A+B的值
呵呵~有没有好的建议啊???
谢啦~~谢啦~~
...全文
1073 点赞 收藏 43
写回复
43 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
vetica 2001-07-25
后后~BCP偶没用过?咋用?
回复
ebeggar 2001-07-25
又很多种方法的:
1、采用分析字符串的方式,然后再insert,最慢!
2、采用pipeline的方式,容易出错!
3、采用SP,将会很快!
4、采用BCP,快得不得了,我同事做过,100多M的文件,共100多万条记录,4分钟搞定,呵呵
回复
fly_lee 2001-07-23
用BCP,参数看HELP
回复
vetica 2001-07-23
后后~~偶94这么做的。。。。。。。
没想到帖子结了之后还有这么回复
多谢大家啦~~~~咿呀~~~~~~~~
回复
vetica 2001-07-23
后后~偶用的SQL SERVER
回复
sologzh 2001-07-23
这个我做过,以行的方式读出数据,进行分析后可倒入数据库
回复
minko_luo 2001-07-23
load data
infile your ip list
into table table_name
ip_address postion(09:16)
.........
用SQL Loader
回复
minko_luo 2001-07-23
你是要倒入数据库吗?
用ORACLE的sql loader,
根据Position来确定就很简单啦 :)
回复
zjqyb 2001-07-22
用pb做太累
回复
changxing 2001-07-22
不用那么麻烦吧?
先导入excel,在导出成逗号分割的纯文本,再往数据库一存不就完了。
统计工作在excel也可以完成,不知这些数据要保存否,不保存的话就不用进数据库了,直接统计完就成了。
回复
whitelion 2001-07-20
cc
回复
lqh178 2001-07-19
刚才第一步写错了,只要使用importfile()函数就可以读进datastore,不过要求是一样的(不含tab)。
回复
lqh178 2001-07-19
速度快的读法是首先将文件读进blob,然后再转换成字符串。然后将字符串导入一个datastore(只有一列,当个数组来使用,但字符串中你要确保没有tab,只有分行符)。只要内存撑得住,我想速度一定会快,至于每一行数据是否有规律,你可以仔细查找一下实际的。

字符串分析应该不复杂。如果足够简单,可以这样处理,写几个全局函数分析字符串(每一行的数据),分别得出相应的列,然后在上面提到的datastore.object中增加三个计算列,表达式中调用此函数来求出各个值,这样一将数据导入datastore,你要的数据也就有了。
回复
pbdesigner 2001-07-19
以上是解决的步骤,一次性读取一次性写入,应该说速度很快的。
回复
pbdesigner 2001-07-19
1。Fileopen()后,用FileRead()读到一个字符串中。(注意当字节数多时在循环中读取)
2。调用Replace()将空隔全部转成'~t'
3。调用ImportString()将数据导入数据窗口或datastore(当然之前你需建相关表和数据窗口对象,而且栏位顺序和类型必须一致)
4。对数据窗口的数据进行保存。
5。利用SQL相关命令进行数据统计等相关操作。(如果你觉得有些字段从意义上不能分开,这时可进行重新整合)
回复
vetica 2001-07-19
hehe~~~ 要存到数据库里进行统计啊~~
我现在觉得读文件处理字符串的速度倒挺快的,94一条一条往数据库里插入数据的操作比较费时间。
(还有,偶比较喜欢用PB,嘿嘿~~)
回复
zq1956 2001-07-19
你不能先用其他语言编一个文字处理程序,然后再去操作吗???
非要用PB????
回复
vetica 2001-07-19
呵呵~大天大亮~~~~~起床up一下先~~~~~~~~
回复
qrhome 2001-07-19
up
up
up
回复
vetica 2001-07-19
我对比了一下几种方法,仔细测量了时间,发现基本上速度差别不大
需要5分钟左右
其中处理字符串大致需要两分半,导入数据库需要两分半~~
偶发现上次记录数搞错了,应该有74549条记录
这么多数据大概也差不多了
呵呵~~谢谢各位了
偶结帐了,再次谢谢大家帮忙~~
回复
加载更多回复
相关推荐
发帖
数据库相关
创建于2007-09-28

734

社区成员

PowerBuilder 数据库相关
申请成为版主
帖子事件
创建了帖子
2001-07-18 02:29
社区公告
暂无公告