当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP获取ACCESS数据库表名及结构的代码

ASP
分享一段代码show.asp?id=26变成show/?26的形式
多域名一网站时如果返回最原来的域名
[原创]完美解决ASP 不能更新。数据库或对象为只读。
5天学会asp
TSYS中生成静态页时溢出: ''CInt''
对象标记具有无效的 ''MSWC.MyInfo'' ProgID
[原创]随机增加网站点击的一个不错的方法
Microsoft JET Database Engine 错误 ''80004005'' 未指定的错误的完美解决方法
反SPAM新思路—换Z-BLOG的验证码!
七步倒┈→专用asp后门
asp下实现代码的“运行代码”“复制代码”“保存代码”功能源码
使用ASP实现网站的“目录树”管理的代码
ShowPage 显示“上一页 下一页”等信息的封装代码
[原创]站长感慨asp编程究竟何去何从
响应对象 错误 ''ASP 0185 : 80020003'' 缺少默认属性
[原创]asp下用实现模板加载的的几种方法总结
[原创]asp获取URL参数的几种方法分析总结
Access数据库中“所有记录中均未找到搜索关键字”的解决方法
ASP程序中输出Excel文件实例一则
ASP应用中如何限制同一表单被多次提交

ASP获取ACCESS数据库表名及结构的代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 108 ::
收藏到网摘: n/a

此方法可获得ACCESS数据的表名及其结构,数据类型等... 程序过滤了几个ACCESS数据库的几个隐藏表(可能是导致ACCESS数据库删除数据还会变大的原因)
<html>
<head>
<title>获取ACCESS数据库表名_www.ruanchen.com</title>
</head>
<body style="text-align:left;margin-left:50px;font-family:'arial';font-size:12px">
<form style="padding:5px;margin:5px;margin-left:0px" name="get" action="" method="post">
数据库路径:<input type="text" name="path" value="" size="50" />
<input type="hidden" name="ari" value="1" />
<input type="submit" value="查看" />
</form>
<hr>
<%
if request.form("ari")="1" and request.form("path")<>"" then
dim conn,connstr,i,sql,rs
on error resume next
Connstr="DRIVER=Microsoft Access Driver (*.mdb);DBQ="+server.mappath(request.form("path"))
Set Conn=Server.CreateObject("ADODB.Connection")
conn.Open connstr
If Err Then
err.Clear
Set Conn = Nothing
Response.Write "数据库连接出错,请检查连接字串。"
Response.End
End If
%>
<font color=red><%=conn.connectionstring%></font><hr>
<%
j=0
dim tablecount
tablecount=0
Set shm = conn.OpenSchema(20)
shm.MoveFirst
Do While Not shm.EOF
If shm("TABLE_TYPE") = "TABLE" Then
If Left(shm("table_name"), 1) <> "~" Then '这里过滤掉隐藏表
j=j+1
call GetFileds(shm("table_name"))
End If
End If
shm.MoveNext
Loop
response.write "共有 "&j&" 个数据表!"
else
response.write "<h3>请输入数据库相对路径查看具体内容!</h3>"
end if
%>
</body>
</html>
<%
Function GetFileds(TableName)
Set rs = server.createobject("adodb.recordset")
Dim SQL
SQL = "select * from " & TableName
rs.Open SQL, conn, 1, 1
Dim Cont
Cont = rs.Fields.Count
response.write "<div style=""margin-bottom:10px;padding:5px;border:1px #dddddd solid;background:#eeeeee"">"&vbcrlf
response.write "表 <font color=red><b>"&TableName&"</b></font> 中含有"&Cont&"个字段,具体如下:<br>"&vbcrlf
For i = 0 To Cont - 1
dim filtype
select case rs.fields(i).type
case 3
filtype="自动编号(数字)"
case 202
filtype="字符"
case 203
filtype="备注"
case 125
filtype="日期"
case 11
filtype="真/假(是/否)"
end select
response.write " <font color=red>"&i&"</font>--<font color=green><b>"&rs.fields(i).name&"</b></font>--"&filtype&";<br />"&vbcrlf
Next
response.write "</div>"&vbcrlf
rs.Close
set rs=nothing
End Function
%>