• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

ASP通用数据库显示编辑程序

发布: 2007-6-30 18:56 | 作者: admin | 来源: | 查看: 34次 | 进入软件测试论坛讨论

领测软件测试网 [引言:]我是虽然半路出家经作了几年的程序,但不知自己是否算是一个程序员。我最近帮朋友作一个网站,为了空间的便宜,选用了ASP+ACCESS的服务器。由于本人对ASP知道很少,所以实在做得有点累,特别是后台数据库的管理,有一大堆的表需要我日常维护。我发现,对于后台数据管理,基本上对数据库进行增删改查的的操作,我一个表一个表的写同样的操作,真的无法忍受。上网查了查,还真有通用的数据显示程序,可惜没有数据编辑功能。于是有了自己写一个通用的功能的想法。下面是我参考网友*后的实现。
[设计目标:]
1、数据库显示,编辑,增加,修改,且可以由用户定义选用。
2、显示的字段列可以用户定义(显示名称可自定义)
3、页面的显示格式以由用户定义,这包括每页记录数,页脚,列宽,表格的样式(配置了格式控制CSS文件)
4、组件的界面,支持多语言(chinese,eng,...),可惜还未有时间实现,现为中文。
5、支持多表联合查询
[缺限:]
调用参数复杂,需要文档支持,多表联合查询别名有限制。

[使用示例:]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<LINK href="./style_cn.css" type=text/css rel=stylesheet>

<title>通用数据库显示程序</title>

</head>
<body bgcolor="#66cccc">
<%
@#多个字段用数组表示
@#DSN连接写法
@#sConn = "DSN=<数据库名>;UID=<DSN账号>;PWD=<密码>"
@#使用物理路径连接Access数据库写法
@#sConn = "DBQ=" & Server.MapPath("<Access数据库文件的当前文件相对路径>") & ";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
@#连接SQLServer写法
@#sConn = "Provider=SQLOLEDB;Persist Security Info=False;UID=<用户名>;PWD=<密码>;Initial Catalog=<SQLServer数据库名>;Data Source=<数据服务器IP>"

Dim sConn, sTableName, sHidden, sDisplay, sQuery, sOrder, iTop, iPageSize,sEditCols,sKey,sRelation,sColWidth
sConn = "DBQ=" & Server.MapPath("sample.MDB") & ";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"

@#sTableName = "客户"
@#sDisplay = "联系人姓名 | 联系人 | <a href=""view.asp?CustomerID=$客户ID$"">$联系人姓名$</a>, 公司名称|公司, 联系人头衔|称谓, 地址, 城市"
@#sHidden = "客户ID"
@#sQuery = "联系人姓名 | 联系人, 公司名称|公司, 联系人头衔|称谓 , 城市"
@#sOrder = "客户ID"
@#iTop = 300
@#iPageSize = 2
@#sEditCols="0,1,1,1,1"@#0-not edit ,1-edit
@#sKey="客户(客户ID);"
@#sRelation=""


sTableName = "Customer,myOrder"
sDisplay = "myOrder.custid|客户ID|<a href=""view.asp?CustomerID=myOrder.custid$"">$CustName$</a>, lineid|行号,product|产品,qty|数量,Amt|金额,dt|日期,linenotes|备注"
sHidden = "CustName"
sQuery = "myOrder.CustID|客户ID, product|产品, dt|定单日期"
sOrder = "myOrder.lineID"
iTop = 300
iPageSize = 2
sEditCols="0,1,1,1,1,1,1"@#0-not edit ,1-edit
sKey="myOrder(myOrder.custid,lineid);"
sRelation=" myOrder.custid=customer.custid "
sColWidth="20,40,60,60,60,60,60"

@#DisplayTable sConn, sTableName, sHidden, sDisplay, sQuery, sOrder, iTop, iPageSize
dim objTable
Set objTable= New clsDispalyTable

@#response.Write sConn & "<br>"
objTable.SetTablePara sConn, sTableName, sHidden, sDisplay, sQuery, sOrder,sRelation,sKey
objTable.SetEditPara sEditCols,"",sColWidth,True,True,True
objTable.SetPagePara 300,3
Response.write "<table border=0 align=center cellspacing=0 cellpadding=0><tr><td bgcolor=#6699cc>"
objTable.DisplayTable
Response.write "</td></tr><table>"

@#pConn, pTableNames, pHidden, pDisplay, pQuery,pOrder,pRelation,pKeys)


%>

演示:http:www.qinych.com/caibing/test/test.asp


文章:<a href="http://www.xurui.com/mypaper/通用数据库显示程序">通用数据库显示程序文章</a><br>
示例asp程序:<a href="http://www.xurui.com/mypaper/通用数据库显示程序/common.asp">http://www.xurui.com/mypaper/通用数据库显示程序/common.asp</a><br>
示例数据库地址:<a href="http://www.xurui.com/mypaper/通用数据库显示程序/sample.mdb">http://www.xurui.com/mypaper/通用数据库显示程序/sample.mdb</a>
</body>
</html>

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网