| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 428 人关注过本帖
标题:[经验]lcd2105关于你的程序
只看楼主 加入收藏
小猪哼哼
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2006-8-15
收藏
 问题点数:0 回复次数:2 
[经验]lcd2105关于你的程序

刚看了你的程序,真的看得头大了,给你三个建议:
1、在数据库设计时候要思考全面,一个好的数据库会让你省很多事,说白了,就是在写程序之前或许只简单地思考了设计,或者说根本没有设计,拿起来就写。比如这个程序中,你完全可以在数据库另设一张表用来存储部门信息。
2、关于数据库连接问题,在你数据库设计好之后,这是一个重要问题,微软的Microsoft.Jet.OLEDB.4.0接口会让你充分享受数据库的乐趣,完全没有必须在一个ACCESS数据库的连接文件里面写上mysql以及sqlserver的连接程式,画蛇添足型,相对路径比绝对路径可以让你的程序更具兼容器,比如我的电脑上没有E盘:P,此程序中的连接文件如下:
<%
set conn=server.CreateObject("ADODB.Connection")
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&server.mappath("data/db1.mdb")
conn.open connstr
%>
3、关于此程序的统计部分,问题比较大,首先,反复的查询数据库无疑增加了服务器的运算步骤,程序显得冗杂,其次,能简单的地方千万不要太过复杂,爱惜资源:)。
在你的基础上改了部分,写下来你看看:xxtjall.asp
<%
dateb1=request("dateb1")
dateb2=request("dateb2")

if dateb1>dateb2 then
temp_time=dateb1
dateb1=dateb2
dateb2=temp_time
end if
dateb1=replace(dateb1,"-","")
dateb2=replace(dateb2,"-","")
%>
以上为获取表单日期部分
set rs=server.CreateObject("adodb.recordset")
sqlstr="select * from news where xxtype='A' and author='一部'"
rs.Open sqlstr,connstr,1,1
yba=0
do until rs.eof or rs.bof
if rs.eof or rs.bof then
exit do
end if
updatetimes=rs("updatetimes")
updatetimes=cstr(updatetimes)
updatetimes=replace(updatetimes,"-","")
if updatetimes>=dateb1 and updatetimes<=dateb2 then
yba=yba+1
end if
rs.movenext
loop
ybsa=yba*1
RS.CLOSE
以上为获取一部的A类统计部分
其它各单位各类都是一样的,为什么不能写成循环呢?你自己研究研究吧。

搜索更多相关主题的帖子: 经验 
2006-09-01 11:40
lcd2105
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-8-22
收藏
得分:0 
谢谢指点!
2006-09-01 15:00
lcd2105
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-8-22
收藏
得分:0 
谢谢指点!
2006-09-01 15:00
快速回复:[经验]lcd2105关于你的程序
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.038955 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved