开发者社区


C++/C | Java | .Net/Windows | Linux/Unix | 开源 | 其他
首页 - 编程
编程
全文搜索:   

导入带有分界符的文本文件
作者: Steven W. Disbrow
2000-06-29 21:36:43



原理

本函数代码中包含了详细的关于操作细节的注释,因此我们仅仅粗略的介绍一下各个对象是如何工作的。在进入函数之前,我们必须为Web服务器设置server.scripttimeout属性。这个属性告知Web服务器经过多久(以秒为单位)后放弃运行的脚本。

这个值需要根据导入数据量的多少进行相应的调整。好了,完成这些琐碎的管理工作之后,我们可以开始研究真正的函数了。

函数做的第一件事是打开包含着目标数据库表的描述信息的描述文件。用该文件中的信息建立一个数组,来存放我们所需了解的数据库表的所有信息。

完成这一步后,所建立的数组中有表中各个域的名称、类型和长度。然后,打开错误日志文件,令其准备就绪接受我们生成的一切错误信息。现在可以打开定界符文件,然后开始将数据从其中"拽"出了。文件一旦打开,就从中读取记录并将记录一次一个域地进行分解。同时,我们检验每个域中的数据,查看它们是否符合描述文件中的标准设置。

如果描述文件将一个域标志为n(数字型),我们就使用isNumeric()函数来查看读取的值是否真的是一个数字。如果是的话,将该值插入到SQL语言的Insert语句中。否则,输出一条错误信息并且将插入到SQL语言Insert语句中的值改为NULL(这是很重要的一点:即使一个或者多个域中含有错误的数据,我们仍然可以试图添加这条记录!仅仅需要在添加前将坏数据除去就可以了。)

当所有的域都经过处理之后,我们利用刚才创建好的SQL Insert语句将数据加入到目标表中。如果这一过程中出现了错误,将错误记录到错误日志中。

到此为止,处理一条记录的工作就完成了。接着处理下一条。当源文件空了之后,打印一些信息,然后向函数的调用者返回插入的记录数。

【上一页】 【下一页】
声明:
Builder.com.cn(原ZDNet China应用开发频道)原创文章版权所有,未经许可严禁转载,且不构成投资建议。
近期相关报道:
实用技术文档
J2me XML
C/C++ C#
Java Oracle
Mysql .Net
VB.NET CSS
SQL Server 数据库
SQL UNIX
Linux Jsp
PHP Perl
Javascript IIS
XHTML ColdFusion
ASP/ASP.NET Apache
AJAX
订阅技术邮件
订阅"技术圈"杂志!请在下面选择您感兴趣的专题,填写e-mail地址,然后按订阅按钮:
应用开发管理
VS.NET 周刊
Database 周刊
WEB Service周刊
JAVA 周刊
IT 认证
Windows服务器周刊
互联网开发
当Windows Server 2008专家得5000元现金大奖
CNET NETWORKS 中国: 爱卡汽车网 | CNET科技资讯网 | e询网 | CWEEK | 蜂鸟网 | GameSpot China | 个人电脑 | PChome | SPN | 网友世界 | ZDNet China | 中关村在线
CNET NETWORKS 美国: BNET | CNET.com | CNET Download.com | CNET News.com | CNET Reviews | CNET Shopper.com | GameSpot | MP3.com | mySimon | Release 1.0 | Search.com | TechRepublic | TV.com | Webshots | ZDNet
Copyright (c) 2006 CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
ZDNet 公司标识是 CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号