- 浏览: 117511 次
- 性别:
- 来自: 深圳
文章分类
最新评论
MDB数据文件操作
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
'新建数据库
if request("act")="CreateDB" then
PathName=trim(request("PathName"))
DbVersion= trim(request("DbVersion"))
if PathName="" then
response.write("<script>alert('要压缩的数据库的路径不能为空!');history.back(1);</script>")
end if
Call FindPathName(PathName)
Call CreateDB(PathName,DbVersion)
end if
'压缩数据库
if request("act")="CompactDB" then
PathName=trim(request("PathName"))
DbVersion=trim(request("DbVersion"))
if PathName="" then
response.write("<script>alert('要压缩的数据库的路径不能为空!');history.back(1);</script>")
end if
Call FindPathName(PathName)
Call ComPactDB(PathName,DbVersion)
end if
'删除数据库
if request("act")="DeleteDB" then
PathName=trim(request("PathName"))
if PathName="" then
response.write("<script>alert('要压缩的数据库的路径不能为空!');history.back(1);</script>")
end if
Call FindPathName(PathName)
Call DeleteDB(PathName)
end if
' 查询所有数据表名称
if request("act")="FindTableList" then
PathName=trim(request("PathName"))
if PathName="" then
response.write("<script>alert('数据库的路径不能为空!');history.back(1);</script>")
end if
Call FindPathName(PathName)
Call FindTableList(PathName,TableListString)
end if
' 查询数据表名称
if request("act")="FindTableName" then
PathName=trim(request("PathName"))
TableName=cstr(trim(request("TableName")))
TableName1=cstr(trim(request("TableName1")))
if PathName="" then
response.write("<script>alert('数据库的路径不能为空!');history.back(1);</script>")
end if
if TableName="" then
response.write("<script>alert('原数据表名称不能为空!');history.back(1);</script>")
end if
Call FindPathName(PathName)
Call FindTableName2(PathName,TableName)
end if
'更新数据表名称
if request("act")="AlterTableName" then
PathName=trim(request("PathName"))
TableName=cstr(trim(request("TableName")))
TableName1=cstr(trim(request("TableName1")))
if PathName="" then
response.write("<script>alert('数据库的路径不能为空!');history.back(1);</script>")
end if
if TableName="" then
response.write("<script>alert('原数据表名称不能为空!');history.back(1);</script>")
end if
if TableName1="" then
response.write("<script>alert('新数据表名称不能为空!');history.back(1);</script>")
end if
Call FindPathName(PathName)
Call FindTableName(PathName,TableName)
Call FindTableName1(PathName,TableName1)
Call AlterTableName(PathName,TableName,TableName1)
end if
'删除数据表名称
if request("act")="DropTableName" then
PathName=trim(request("PathName"))
TableName=cstr(trim(request("TableName")))
if PathName="" then
response.write("<script>alert('数据库的路径不能为空!');history.back(1);</script>")
end if
if TableName="" then
response.write("<script>alert('要删除的数据表名称不能为空!');history.back(1);</script>")
end if
Call FindPathName(PathName)
Call FindTableName(PathName,TableName)
Call DropTableName(PathName,TableName)
end if
'查询数据表字段
if request("act")="FindTableColumnList" then
PathName=trim(request("PathName"))
TableName=cstr(trim(request("TableName")))
if PathName="" then
response.write("<script>alert('数据库的路径不能为空!');history.back(1);</script>")
end if
if TableName="" then
response.write("<script>alert('要查询的数据表名称不能为空!');history.back(1);</script>")
end if
Call FindPathName(PathName)
Call FindTableName(PathName,TableName)
Call FindTableColumnList(PathName,TableName)
end if
Sub CreateDB(PathName,DbVersion)
on error resume next
select case DbVersion
case "97"
DbVersion1 = "3.51"
case "2000"
DbVersion1 = "4.0"
end select
Set Cat = Server.CreateObject("ADOX.Catalog")
call Cat.Create("Provider=Microsoft.Jet.OLEDB." & DbVersion1 & ";Data Source=" & server.MapPath(PathName))
if err then
response.write("<script>alert('新建Access"&DbVersion&"数据库"&PathName&"时发生错误,错误代码"&err.description&" ,即将返回');history.go(-1);</script>")
Response.end
else
response.write("<script>alert('新建Access"&DbVersion&"数据库"&PathName&"操作成功,系统即将返回');history.go(-1);</script>")
response.End()
end if
End Sub
Sub FindPathName(PathName)
on error resume next
x=0
Set fso = CreateObject("Scripting.FileSystemObject")
if fso.fileexists(server.MapPath(PathName))=true then
x=1
set fso=nothing
if err then
response.write("<script>alert('查找数据库"&PathName&"时发生错误,错误代码"&err.description&" ,即将返回');history.go(-1);</script>")
Response.end
else
if x=0 then
response.write("<script>alert('数据库"&PathName&"不存在,系统即将返回');history.go(-1);</script>")
response.End()
end if
end if
end if
End Sub
'查询指定名称的数据表,找到了继续,找不到返回
Sub FindTableName(PathName,TableName)
strConn="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath(PathName)
set objConn=server.createobject("Adodb.connection")
objConn.open strConn
rem x=0 表示不存在,x=1 表示存在
set rsSchema=objConn.openSchema(20)
rsSchema.movefirst
x=0
Do Until rsSchema.EOF
if rsSchema("TABLE_TYPE")="TABLE" then
if rsSchema("TABLE_NAME")=tablename then
x=1
exit do
end if
end if
rsSchema.movenext
Loop
if x=0 then
response.write("<script>alert('数据表"&tablename&"不经存在,系统即将返回');location.href='AlterDatabase.asp';</script>")
response.End()
end if
set objConn=nothing
End Sub
'查询指定名称的数据表,找到了返回,找不到继续
Sub FindTableName1(PathName,TableName)
strConn="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath(PathName)
set objConn=server.createobject("Adodb.connection")
objConn.open strConn
rem x=0 表示不存在,x=1 表示存在
set rsSchema=objConn.openSchema(20)
rsSchema.movefirst
x=0
Do Until rsSchema.EOF
if rsSchema("TABLE_TYPE")="TABLE" then
if rsSchema("TABLE_NAME")=tablename then
x=1
exit do
end if
end if
rsSchema.movenext
Loop
if x=1 then
response.write("<script>alert('新数据表"&tablename&"已经存在,系统即将返回');location.href='AlterDatabase.asp';</script>")
response.End()
end if
set objConn=nothing
End Sub
'查询指定的数据表
Sub FindTableName2(PathName,TableName)
strConn="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath(PathName)
set objConn=server.createobject("Adodb.connection")
objConn.open strConn
rem x=0 表示不存在,x=1 表示存在
set rsSchema=objConn.openSchema(20)
rsSchema.movefirst
x=0
Do Until rsSchema.EOF
if rsSchema("TABLE_TYPE")="TABLE" then
if rsSchema("TABLE_NAME")=tablename then
x=1
exit do
end if
end if
rsSchema.movenext
Loop
if x=1 then
response.write("<script>alert('数据表"&tablename&"找到了,系统即将返回');location.href='AlterDatabase.asp';</script>")
response.End()
else
response.write("<script>alert('找不到数据表"&tablename&",系统即将返回');location.href='AlterDatabase.asp';</script>")
response.End()
end if
set objConn=nothing
End Sub
'查询指定数据库中的所有数据表
Sub FindTableList(PathName,TableListString)
TableListString=""
strConn="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath(PathName)
set objConn=server.createobject("Adodb.connection")
objConn.open strConn
rem x=0 表示不存在,x=1 表示存在
set rsSchema=objConn.openSchema(20)
rsSchema.movefirst
x=0
Do Until rsSchema.EOF
if rsSchema("TABLE_TYPE")="TABLE" then
x=x+1
TableListString=TableListString&rsSchema("TABLE_NAME")&";"
end if
rsSchema.movenext
Loop
if x>0 then
response.write("<script>alert('找到了"&x&"个用户定义的数据表"&TableListString&"!,系统即将返回');location.href='AlterDatabase.asp';</script>")
response.End()
else
response.write("<script>alert('找不到任何用户定义的数据表!系统即将返回');location.href='AlterDatabase.asp';</script>")
response.End()
end if
set objConn=nothing
End Sub
'删除数据库
Sub DeleteDB(PathName)
on error resume next
x=0
Set fso = CreateObject("Scripting.FileSystemObject")
if fso.fileexists(server.MapPath(PathName))=true then
fso.deletefile(server.MapPath(PathName))
set fso=nothing
if err then
response.write("<script>alert('删除数据库"&PathName&"时发生错误,错误代码"&err.description&" ,即将返回');history.go(-1);</script>")
Response.end
else
response.write("<script>alert('删除数据库"&PathName&"成功,系统即将返回');history.go(-1);</script>")
response.End()
end if
end if
End Sub
'修改数据表名称
Sub AlterTableName(PathName,TableName,TableName1)
'Dim MyTable,MyField ,pro
On Error resume next
strConn="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath(PathName)
set Conn=server.createobject("Adodb.connection")
Conn.open strConn
set mydb=server.createobject("adox.catalog")
set mytable=server.createobject("adox.table")
set myfield =server.createobject("adox.column")
MyDB.ActiveConnection =Conn
For Each MyTable In MyDB.Tables
if MyTable.Name=TableName then
MyTable.Name=TableName1
exit for
end if
Next
conn.close
set Conn=nothing
if err then
response.write("<script>alert('原数据表名称"&tablename&"修改成新数据表名称"&tablename1&"时发生错误,错误代码"&err.description&" ,即将返回');history.go(-1);</script>")
Response.end
else
response.write("<script>alert('原数据表名称"&tablename&"修改成新数据表名称"&tablename1&"成功!,系统即将返回');location.href='AlterDatabase.asp';</script>")
Response.end
end if
End Sub
'删除数据表名称
Sub DropTableName(PathName,TableName)
'Dim MyTable,MyField ,pro
On Error resume next
strConn="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath(PathName)
set Conn=server.createobject("Adodb.connection")
Conn.open strConn
set mydb=server.createobject("adox.catalog")
set mytable=server.createobject("adox.table")
set myfield =server.createobject("adox.column")
MyDB.ActiveConnection =Conn
For Each MyTable In MyDB.Tables
if MyTable.Name=TableName then
MyDB.Tables.delete(TableName)
exit for
end if
Next
conn.close
set Conn=nothing
if err then
response.write("<script>alert('删除数据表"&tablename&"时发生错误,错误代码"&err.description&" ,即将返回');history.go(-1);</script>")
Response.end
else
response.write("<script>alert('删除数据表"&tablename&"成功!,系统即将返回');location.href='AlterDatabase.asp';</script>")
Response.end
end if
End Sub
Sub CompactDB(PathName, DbVersion)
on error resume next
strPathName = left(server.MapPath(PathName),instrrev(server.Mappath(PathName),"/"))
Set fso = CreateObject("Scripting.FileSystemObject")
Set Engine = CreateObject("JRO.JetEngine")
If DbVersion = 97 Then
Engine.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath(PathName), _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strPathName & "temp.mdb;" _
& "Jet OLEDB:Engine Type=" & 4
Else
Engine.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath(PathName), _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strPathName & "temp.mdb"
End If
fso.CopyFile strPathName & "temp.mdb",server.MapPath(PathName)
fso.DeleteFile(strPathName & "temp.mdb")
Set fso = nothing
Set Engine = nothing
if err then
response.write("<script>alert('压缩数据库"&server.MapPath(PathName)&"时发生错误,错误代码"&err.description&" ,即将返回');history.go(-1);</script>")
Response.end
else
response.write("<script>alert('压缩数据库"&server.MapPath(PathName)&"成功!,系统即将返回');location.href='AlterDatabase.asp';</script>")
Response.end
end if
end sub
Sub FindTableColumnList(PathName,TableName)
ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath(PathName)
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.open ConnStr
Const adSchemaTables = 20
adSchemaColumns = 4
Set rstSchema = oConn.OpenSchema(adSchemaColumns)
response.write "<table border=1 align=center>"
response.write "<tr><td>Table name</td><td>field name</td><td>field type</td><td>is nullable</td><td>field size</td></tr>"
'tablename=""
Do Until rstSchema.EOF
if rstSchema("Table_name") =tablename then
response.write "<tr><td>"
response.write rstSchema("Table_name")
response.write "</td><td>"& rstschema("column_Name") & "</td><td>"
select case rstschema("data_type")
case 130
if rstschema("CHARACTER_MAXIMUM_LENGTH") = 1073741823 then
response.write "Memo"
else
response.write "Text"
end if
case 135
response.write "Date/Time"
case 3
response.write "Long Integer"
case 11
response.write "Yes/No"
case 131
response.write "Currency"
case else
response.write rstschema("data_type")
end select
response.write "</td><td>" & rstschema("is_nullable") & "</td><td>"
if rstschema("CHARACTER_MAXIMUM_LENGTH") <> 1073741823 then
response.write rstschema("CHARACTER_MAXIMUM_LENGTH")
else
response.write " "
end if
response.write "</td></tr>"
end if
rstSchema.MoveNext
Loop
response.write "</table>"
response.Write("<div align=center><a href='javascript:history.go(-1);' >点这里返回</a></div>")
response.End()
end sub
%>
<br>
<table width="739" border="0" align="center" cellpadding="0" cellspacing="0">
<form action="?act=CreateDB" method="post" >
<tr>
<td height="35" colspan="2"><div align="center"><font size="4"><strong><font color="#FF0000">新建数据库(ASO+ADOX)</font></strong></font></div></td>
</tr>
<tr>
<td width="153" height="35">数据库库路径:</td>
<td width="586" height="35"><input name="PathName" type="text" id="PathName"> </td>
</tr>
<tr>
<td height="35">Access数据库格式</td>
<td height="35"><input name="DbVersion" type="radio" value="2000" checked>
Access 2000 <input name="DbVersion" type="radio" value="97">
Access 97</td>
</tr>
<tr align="center">
<td height="35" colspan="2"><input name="submit1" type="submit" id="submit1" value="新建数据库">
</td>
</tr>
</form>
</table>
<br>
<table width="739" border="0" align="center" cellpadding="0" cellspacing="0">
<form action="?act=DeleteDB" method="post" >
<tr>
<td height="35" colspan="2"><div align="center"><font size="4"><strong><font color="#FF0000">删除数据库(FSO)</font></strong></font></div></td>
</tr>
<tr>
<td width="153" height="35">数据库库路径:</td>
<td width="586" height="35"><input name="PathName" type="text" id="PathName"> </td>
</tr>
<tr align="center">
<td height="35" colspan="2"><input name="submit1" type="submit" id="submit1" value="删除数据库">
</td>
</tr>
</form>
</table>
<br>
<table width="739" border="0" align="center" cellpadding="0" cellspacing="0">
<form action="?act=CompactDB" method="post" >
<tr>
<td height="35" colspan="2"><div align="center"><font size="4"><strong><font color="#FF0000">压缩数据库(ASO+JRO)</font></strong></font></div></td>
</tr>
<tr>
<td width="153" height="35">数据库库路径:</td>
<td width="586" height="35"><input name="PathName" type="text" id="PathName"> </td>
</tr>
<tr>
<td height="35">Access数据库格式</td>
<td height="35"><input name="DbVersion" type="radio" value="2000" checked>
Access 2000 <input name="DbVersion" type="radio" value="97">
Access 97</td>
</tr>
<tr align="center">
<td height="35" colspan="2"><input name="submit1" type="submit" id="submit1" value="开始压缩数据库">
</td>
</tr>
</form>
</table>
<br>
<table width="739" border="0" align="center" cellpadding="0" cellspacing="0">
<form action="?act=FindTableList" method="post" >
<tr>
<td height="35" colspan="2"><div align="center"><font size="4"><strong><font color="#FF0000">查询所有数据库中的所有表(FSO+ADOX)</font></strong></font></div></td>
</tr>
<tr>
<td width="153" height="35">数据库库路径:</td>
<td width="586" height="35"><input name="PathName" type="text" id="PathName"> </td>
</tr>
<tr align="center">
<td height="35" colspan="2"><input name="submit1" type="submit" id="submit1" value="查询所有数据库中的所有表">
</td>
</tr>
</form>
</table>
<br>
<table width="739" border="0" align="center" cellpadding="0" cellspacing="0">
<form action="?act=FindTableName" method="post" >
<tr>
<td height="30" colspan="2"><div align="center"><strong><font color="#FF0000">查询指定数据表名称(AODX)</font></strong></div></td>
</tr>
<tr>
<td width="154" height="23">数据库路径:</td>
<td ><input name="PathName" type="text" id="PathName">
( 相对路径 )</td>
</tr>
<tr>
<td height="23">数据表名称:</td>
<td ><input name="TableName" type="text" id="TableName" size="15" maxlength="255"> </td>
</tr>
<tr align="center">
<td colspan="2"><input type="submit" name="Submit" value="查询指定数据表名称">
</td>
</tr>
</form>
</table>
<br>
<table width="739" border="0" align="center" cellpadding="0" cellspacing="0">
<form action="?act=AlterTableName" method="post" >
<tr>
<td height="30" colspan="2"><div align="center"><strong><font color="#FF0000">修改数据库表名称(AODX)</font></strong></div></td>
</tr>
<tr>
<td width="154" height="23">数据库路径:</td>
<td ><input name="PathName" type="text" id="PathName">
( 相对路径 )</td>
</tr>
<tr>
<td height="23">原数据表名称:</td>
<td ><input name="TableName" type="text" id="TableName" size="15" maxlength="255"> </td>
</tr>
<tr align="center">
<td height="25" align="left" ><p>新数据表名称:</p>
</td>
<td width="585" height="25" align="left"><input name="TableName1" type="text" id="TableName1" value="" size="15" maxlength="255"></td>
</tr>
<tr align="center">
<td colspan="2"><input type="submit" name="Submit" value="修改数据库表名称">
</td>
</tr>
</form>
</table>
<br>
<table width="739" border="0" align="center" cellpadding="0" cellspacing="0">
<form action="?act=FindTableColumnList" method="post" >
<tr>
<td height="30" colspan="2"><div align="center"><strong><font color="#FF0000">查询指定数据表所有字段(AODX)</font></strong></div></td>
</tr>
<tr>
<td width="154" height="23">数据库路径:</td>
<td ><input name="PathName" type="text" id="PathName">
( 相对路径 )</td>
</tr>
<tr>
<td height="23">数据表名称:</td>
<td ><input name="TableName" type="text" id="TableName" size="15" maxlength="255"> </td>
</tr>
<tr align="center">
<td colspan="2"><input type="submit" name="Submit" value="查询指定数据表所有字段">
</td>
</tr>
</form>
</table>
<%
'新建数据库
if request("act")="CreateDB" then
PathName=trim(request("PathName"))
DbVersion= trim(request("DbVersion"))
if PathName="" then
response.write("<script>alert('要压缩的数据库的路径不能为空!');history.back(1);</script>")
end if
Call FindPathName(PathName)
Call CreateDB(PathName,DbVersion)
end if
'压缩数据库
if request("act")="CompactDB" then
PathName=trim(request("PathName"))
DbVersion=trim(request("DbVersion"))
if PathName="" then
response.write("<script>alert('要压缩的数据库的路径不能为空!');history.back(1);</script>")
end if
Call FindPathName(PathName)
Call ComPactDB(PathName,DbVersion)
end if
'删除数据库
if request("act")="DeleteDB" then
PathName=trim(request("PathName"))
if PathName="" then
response.write("<script>alert('要压缩的数据库的路径不能为空!');history.back(1);</script>")
end if
Call FindPathName(PathName)
Call DeleteDB(PathName)
end if
' 查询所有数据表名称
if request("act")="FindTableList" then
PathName=trim(request("PathName"))
if PathName="" then
response.write("<script>alert('数据库的路径不能为空!');history.back(1);</script>")
end if
Call FindPathName(PathName)
Call FindTableList(PathName,TableListString)
end if
' 查询数据表名称
if request("act")="FindTableName" then
PathName=trim(request("PathName"))
TableName=cstr(trim(request("TableName")))
TableName1=cstr(trim(request("TableName1")))
if PathName="" then
response.write("<script>alert('数据库的路径不能为空!');history.back(1);</script>")
end if
if TableName="" then
response.write("<script>alert('原数据表名称不能为空!');history.back(1);</script>")
end if
Call FindPathName(PathName)
Call FindTableName2(PathName,TableName)
end if
'更新数据表名称
if request("act")="AlterTableName" then
PathName=trim(request("PathName"))
TableName=cstr(trim(request("TableName")))
TableName1=cstr(trim(request("TableName1")))
if PathName="" then
response.write("<script>alert('数据库的路径不能为空!');history.back(1);</script>")
end if
if TableName="" then
response.write("<script>alert('原数据表名称不能为空!');history.back(1);</script>")
end if
if TableName1="" then
response.write("<script>alert('新数据表名称不能为空!');history.back(1);</script>")
end if
Call FindPathName(PathName)
Call FindTableName(PathName,TableName)
Call FindTableName1(PathName,TableName1)
Call AlterTableName(PathName,TableName,TableName1)
end if
'删除数据表名称
if request("act")="DropTableName" then
PathName=trim(request("PathName"))
TableName=cstr(trim(request("TableName")))
if PathName="" then
response.write("<script>alert('数据库的路径不能为空!');history.back(1);</script>")
end if
if TableName="" then
response.write("<script>alert('要删除的数据表名称不能为空!');history.back(1);</script>")
end if
Call FindPathName(PathName)
Call FindTableName(PathName,TableName)
Call DropTableName(PathName,TableName)
end if
'查询数据表字段
if request("act")="FindTableColumnList" then
PathName=trim(request("PathName"))
TableName=cstr(trim(request("TableName")))
if PathName="" then
response.write("<script>alert('数据库的路径不能为空!');history.back(1);</script>")
end if
if TableName="" then
response.write("<script>alert('要查询的数据表名称不能为空!');history.back(1);</script>")
end if
Call FindPathName(PathName)
Call FindTableName(PathName,TableName)
Call FindTableColumnList(PathName,TableName)
end if
Sub CreateDB(PathName,DbVersion)
on error resume next
select case DbVersion
case "97"
DbVersion1 = "3.51"
case "2000"
DbVersion1 = "4.0"
end select
Set Cat = Server.CreateObject("ADOX.Catalog")
call Cat.Create("Provider=Microsoft.Jet.OLEDB." & DbVersion1 & ";Data Source=" & server.MapPath(PathName))
if err then
response.write("<script>alert('新建Access"&DbVersion&"数据库"&PathName&"时发生错误,错误代码"&err.description&" ,即将返回');history.go(-1);</script>")
Response.end
else
response.write("<script>alert('新建Access"&DbVersion&"数据库"&PathName&"操作成功,系统即将返回');history.go(-1);</script>")
response.End()
end if
End Sub
Sub FindPathName(PathName)
on error resume next
x=0
Set fso = CreateObject("Scripting.FileSystemObject")
if fso.fileexists(server.MapPath(PathName))=true then
x=1
set fso=nothing
if err then
response.write("<script>alert('查找数据库"&PathName&"时发生错误,错误代码"&err.description&" ,即将返回');history.go(-1);</script>")
Response.end
else
if x=0 then
response.write("<script>alert('数据库"&PathName&"不存在,系统即将返回');history.go(-1);</script>")
response.End()
end if
end if
end if
End Sub
'查询指定名称的数据表,找到了继续,找不到返回
Sub FindTableName(PathName,TableName)
strConn="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath(PathName)
set objConn=server.createobject("Adodb.connection")
objConn.open strConn
rem x=0 表示不存在,x=1 表示存在
set rsSchema=objConn.openSchema(20)
rsSchema.movefirst
x=0
Do Until rsSchema.EOF
if rsSchema("TABLE_TYPE")="TABLE" then
if rsSchema("TABLE_NAME")=tablename then
x=1
exit do
end if
end if
rsSchema.movenext
Loop
if x=0 then
response.write("<script>alert('数据表"&tablename&"不经存在,系统即将返回');location.href='AlterDatabase.asp';</script>")
response.End()
end if
set objConn=nothing
End Sub
'查询指定名称的数据表,找到了返回,找不到继续
Sub FindTableName1(PathName,TableName)
strConn="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath(PathName)
set objConn=server.createobject("Adodb.connection")
objConn.open strConn
rem x=0 表示不存在,x=1 表示存在
set rsSchema=objConn.openSchema(20)
rsSchema.movefirst
x=0
Do Until rsSchema.EOF
if rsSchema("TABLE_TYPE")="TABLE" then
if rsSchema("TABLE_NAME")=tablename then
x=1
exit do
end if
end if
rsSchema.movenext
Loop
if x=1 then
response.write("<script>alert('新数据表"&tablename&"已经存在,系统即将返回');location.href='AlterDatabase.asp';</script>")
response.End()
end if
set objConn=nothing
End Sub
'查询指定的数据表
Sub FindTableName2(PathName,TableName)
strConn="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath(PathName)
set objConn=server.createobject("Adodb.connection")
objConn.open strConn
rem x=0 表示不存在,x=1 表示存在
set rsSchema=objConn.openSchema(20)
rsSchema.movefirst
x=0
Do Until rsSchema.EOF
if rsSchema("TABLE_TYPE")="TABLE" then
if rsSchema("TABLE_NAME")=tablename then
x=1
exit do
end if
end if
rsSchema.movenext
Loop
if x=1 then
response.write("<script>alert('数据表"&tablename&"找到了,系统即将返回');location.href='AlterDatabase.asp';</script>")
response.End()
else
response.write("<script>alert('找不到数据表"&tablename&",系统即将返回');location.href='AlterDatabase.asp';</script>")
response.End()
end if
set objConn=nothing
End Sub
'查询指定数据库中的所有数据表
Sub FindTableList(PathName,TableListString)
TableListString=""
strConn="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath(PathName)
set objConn=server.createobject("Adodb.connection")
objConn.open strConn
rem x=0 表示不存在,x=1 表示存在
set rsSchema=objConn.openSchema(20)
rsSchema.movefirst
x=0
Do Until rsSchema.EOF
if rsSchema("TABLE_TYPE")="TABLE" then
x=x+1
TableListString=TableListString&rsSchema("TABLE_NAME")&";"
end if
rsSchema.movenext
Loop
if x>0 then
response.write("<script>alert('找到了"&x&"个用户定义的数据表"&TableListString&"!,系统即将返回');location.href='AlterDatabase.asp';</script>")
response.End()
else
response.write("<script>alert('找不到任何用户定义的数据表!系统即将返回');location.href='AlterDatabase.asp';</script>")
response.End()
end if
set objConn=nothing
End Sub
'删除数据库
Sub DeleteDB(PathName)
on error resume next
x=0
Set fso = CreateObject("Scripting.FileSystemObject")
if fso.fileexists(server.MapPath(PathName))=true then
fso.deletefile(server.MapPath(PathName))
set fso=nothing
if err then
response.write("<script>alert('删除数据库"&PathName&"时发生错误,错误代码"&err.description&" ,即将返回');history.go(-1);</script>")
Response.end
else
response.write("<script>alert('删除数据库"&PathName&"成功,系统即将返回');history.go(-1);</script>")
response.End()
end if
end if
End Sub
'修改数据表名称
Sub AlterTableName(PathName,TableName,TableName1)
'Dim MyTable,MyField ,pro
On Error resume next
strConn="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath(PathName)
set Conn=server.createobject("Adodb.connection")
Conn.open strConn
set mydb=server.createobject("adox.catalog")
set mytable=server.createobject("adox.table")
set myfield =server.createobject("adox.column")
MyDB.ActiveConnection =Conn
For Each MyTable In MyDB.Tables
if MyTable.Name=TableName then
MyTable.Name=TableName1
exit for
end if
Next
conn.close
set Conn=nothing
if err then
response.write("<script>alert('原数据表名称"&tablename&"修改成新数据表名称"&tablename1&"时发生错误,错误代码"&err.description&" ,即将返回');history.go(-1);</script>")
Response.end
else
response.write("<script>alert('原数据表名称"&tablename&"修改成新数据表名称"&tablename1&"成功!,系统即将返回');location.href='AlterDatabase.asp';</script>")
Response.end
end if
End Sub
'删除数据表名称
Sub DropTableName(PathName,TableName)
'Dim MyTable,MyField ,pro
On Error resume next
strConn="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath(PathName)
set Conn=server.createobject("Adodb.connection")
Conn.open strConn
set mydb=server.createobject("adox.catalog")
set mytable=server.createobject("adox.table")
set myfield =server.createobject("adox.column")
MyDB.ActiveConnection =Conn
For Each MyTable In MyDB.Tables
if MyTable.Name=TableName then
MyDB.Tables.delete(TableName)
exit for
end if
Next
conn.close
set Conn=nothing
if err then
response.write("<script>alert('删除数据表"&tablename&"时发生错误,错误代码"&err.description&" ,即将返回');history.go(-1);</script>")
Response.end
else
response.write("<script>alert('删除数据表"&tablename&"成功!,系统即将返回');location.href='AlterDatabase.asp';</script>")
Response.end
end if
End Sub
Sub CompactDB(PathName, DbVersion)
on error resume next
strPathName = left(server.MapPath(PathName),instrrev(server.Mappath(PathName),"/"))
Set fso = CreateObject("Scripting.FileSystemObject")
Set Engine = CreateObject("JRO.JetEngine")
If DbVersion = 97 Then
Engine.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath(PathName), _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strPathName & "temp.mdb;" _
& "Jet OLEDB:Engine Type=" & 4
Else
Engine.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath(PathName), _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strPathName & "temp.mdb"
End If
fso.CopyFile strPathName & "temp.mdb",server.MapPath(PathName)
fso.DeleteFile(strPathName & "temp.mdb")
Set fso = nothing
Set Engine = nothing
if err then
response.write("<script>alert('压缩数据库"&server.MapPath(PathName)&"时发生错误,错误代码"&err.description&" ,即将返回');history.go(-1);</script>")
Response.end
else
response.write("<script>alert('压缩数据库"&server.MapPath(PathName)&"成功!,系统即将返回');location.href='AlterDatabase.asp';</script>")
Response.end
end if
end sub
Sub FindTableColumnList(PathName,TableName)
ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath(PathName)
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.open ConnStr
Const adSchemaTables = 20
adSchemaColumns = 4
Set rstSchema = oConn.OpenSchema(adSchemaColumns)
response.write "<table border=1 align=center>"
response.write "<tr><td>Table name</td><td>field name</td><td>field type</td><td>is nullable</td><td>field size</td></tr>"
'tablename=""
Do Until rstSchema.EOF
if rstSchema("Table_name") =tablename then
response.write "<tr><td>"
response.write rstSchema("Table_name")
response.write "</td><td>"& rstschema("column_Name") & "</td><td>"
select case rstschema("data_type")
case 130
if rstschema("CHARACTER_MAXIMUM_LENGTH") = 1073741823 then
response.write "Memo"
else
response.write "Text"
end if
case 135
response.write "Date/Time"
case 3
response.write "Long Integer"
case 11
response.write "Yes/No"
case 131
response.write "Currency"
case else
response.write rstschema("data_type")
end select
response.write "</td><td>" & rstschema("is_nullable") & "</td><td>"
if rstschema("CHARACTER_MAXIMUM_LENGTH") <> 1073741823 then
response.write rstschema("CHARACTER_MAXIMUM_LENGTH")
else
response.write " "
end if
response.write "</td></tr>"
end if
rstSchema.MoveNext
Loop
response.write "</table>"
response.Write("<div align=center><a href='javascript:history.go(-1);' >点这里返回</a></div>")
response.End()
end sub
%>
<br>
<table width="739" border="0" align="center" cellpadding="0" cellspacing="0">
<form action="?act=CreateDB" method="post" >
<tr>
<td height="35" colspan="2"><div align="center"><font size="4"><strong><font color="#FF0000">新建数据库(ASO+ADOX)</font></strong></font></div></td>
</tr>
<tr>
<td width="153" height="35">数据库库路径:</td>
<td width="586" height="35"><input name="PathName" type="text" id="PathName"> </td>
</tr>
<tr>
<td height="35">Access数据库格式</td>
<td height="35"><input name="DbVersion" type="radio" value="2000" checked>
Access 2000 <input name="DbVersion" type="radio" value="97">
Access 97</td>
</tr>
<tr align="center">
<td height="35" colspan="2"><input name="submit1" type="submit" id="submit1" value="新建数据库">
</td>
</tr>
</form>
</table>
<br>
<table width="739" border="0" align="center" cellpadding="0" cellspacing="0">
<form action="?act=DeleteDB" method="post" >
<tr>
<td height="35" colspan="2"><div align="center"><font size="4"><strong><font color="#FF0000">删除数据库(FSO)</font></strong></font></div></td>
</tr>
<tr>
<td width="153" height="35">数据库库路径:</td>
<td width="586" height="35"><input name="PathName" type="text" id="PathName"> </td>
</tr>
<tr align="center">
<td height="35" colspan="2"><input name="submit1" type="submit" id="submit1" value="删除数据库">
</td>
</tr>
</form>
</table>
<br>
<table width="739" border="0" align="center" cellpadding="0" cellspacing="0">
<form action="?act=CompactDB" method="post" >
<tr>
<td height="35" colspan="2"><div align="center"><font size="4"><strong><font color="#FF0000">压缩数据库(ASO+JRO)</font></strong></font></div></td>
</tr>
<tr>
<td width="153" height="35">数据库库路径:</td>
<td width="586" height="35"><input name="PathName" type="text" id="PathName"> </td>
</tr>
<tr>
<td height="35">Access数据库格式</td>
<td height="35"><input name="DbVersion" type="radio" value="2000" checked>
Access 2000 <input name="DbVersion" type="radio" value="97">
Access 97</td>
</tr>
<tr align="center">
<td height="35" colspan="2"><input name="submit1" type="submit" id="submit1" value="开始压缩数据库">
</td>
</tr>
</form>
</table>
<br>
<table width="739" border="0" align="center" cellpadding="0" cellspacing="0">
<form action="?act=FindTableList" method="post" >
<tr>
<td height="35" colspan="2"><div align="center"><font size="4"><strong><font color="#FF0000">查询所有数据库中的所有表(FSO+ADOX)</font></strong></font></div></td>
</tr>
<tr>
<td width="153" height="35">数据库库路径:</td>
<td width="586" height="35"><input name="PathName" type="text" id="PathName"> </td>
</tr>
<tr align="center">
<td height="35" colspan="2"><input name="submit1" type="submit" id="submit1" value="查询所有数据库中的所有表">
</td>
</tr>
</form>
</table>
<br>
<table width="739" border="0" align="center" cellpadding="0" cellspacing="0">
<form action="?act=FindTableName" method="post" >
<tr>
<td height="30" colspan="2"><div align="center"><strong><font color="#FF0000">查询指定数据表名称(AODX)</font></strong></div></td>
</tr>
<tr>
<td width="154" height="23">数据库路径:</td>
<td ><input name="PathName" type="text" id="PathName">
( 相对路径 )</td>
</tr>
<tr>
<td height="23">数据表名称:</td>
<td ><input name="TableName" type="text" id="TableName" size="15" maxlength="255"> </td>
</tr>
<tr align="center">
<td colspan="2"><input type="submit" name="Submit" value="查询指定数据表名称">
</td>
</tr>
</form>
</table>
<br>
<table width="739" border="0" align="center" cellpadding="0" cellspacing="0">
<form action="?act=AlterTableName" method="post" >
<tr>
<td height="30" colspan="2"><div align="center"><strong><font color="#FF0000">修改数据库表名称(AODX)</font></strong></div></td>
</tr>
<tr>
<td width="154" height="23">数据库路径:</td>
<td ><input name="PathName" type="text" id="PathName">
( 相对路径 )</td>
</tr>
<tr>
<td height="23">原数据表名称:</td>
<td ><input name="TableName" type="text" id="TableName" size="15" maxlength="255"> </td>
</tr>
<tr align="center">
<td height="25" align="left" ><p>新数据表名称:</p>
</td>
<td width="585" height="25" align="left"><input name="TableName1" type="text" id="TableName1" value="" size="15" maxlength="255"></td>
</tr>
<tr align="center">
<td colspan="2"><input type="submit" name="Submit" value="修改数据库表名称">
</td>
</tr>
</form>
</table>
<br>
<table width="739" border="0" align="center" cellpadding="0" cellspacing="0">
<form action="?act=FindTableColumnList" method="post" >
<tr>
<td height="30" colspan="2"><div align="center"><strong><font color="#FF0000">查询指定数据表所有字段(AODX)</font></strong></div></td>
</tr>
<tr>
<td width="154" height="23">数据库路径:</td>
<td ><input name="PathName" type="text" id="PathName">
( 相对路径 )</td>
</tr>
<tr>
<td height="23">数据表名称:</td>
<td ><input name="TableName" type="text" id="TableName" size="15" maxlength="255"> </td>
</tr>
<tr align="center">
<td colspan="2"><input type="submit" name="Submit" value="查询指定数据表所有字段">
</td>
</tr>
</form>
</table>
相关推荐
access数据库MDB数据文件导入oracle数据库操作步骤.pdf
C#操作ACCESS数据库,MDB文件读写
jdbc连接Access数据库分页读取数据, 包含示例代码,Access驱动包ucanaccess-2.0.9.2.jar
VISUAL C++ vc++ ADO 操作access数据库mdb.zip
Python读取Access数据库基本操作,练习数据库,包括:获取单个表结构信息、获取所有表名称、获取某个表数据内容、获取统计表数据、修改表中数据、清空一列数据、删除表字段、增加表字段、清空表。(包含。py源码+mdb)
# -*- coding:utf-8 -*- __author__ = 'mayi' #导入模块 import pypyodbc #定义conn def mdb_conn(db_name, ... 功能:向数据库插入数据 :param conn: 数据库连接 :param cur: 游标 :param sql: sql语句 :ret
最新版的汉化MDBPlus它不需要安装运行微软提供的数据访问组件MDAC,就可以查看,编辑,查询和搜索Access MDB文件
一键式操作,无需安装数据库,就可直接查看MDB数据,简单易用。对于有密码的文件还是需输入密码哦。
自己写的 JAVA 操作MDB,MYSQL,SQLSERVER,ORCALE的包 底层是用连接池 写 提供了 表对象自动生成 可视化的操作 使用户对数据的库操作 更加简单 更加优越.附加详细的帮助文档.
模块名称:ASP操作MDB模块 版本:1.0 ------------------------------ .版本 2 .子程序 APS执行SQL语句, 整数型, 公开, 地址非法与操作错误返回-1 事务操作失败返回-2 数据为空返回0 操作成功返回1 .参数 SQL...
4.把备份数据库中USERS表中的所有数据复制到新doms.mdb数据库的USERS表中,并把现有的doms.mdb数据库SEQUENCES表中的USER_SEQ字段值改为USERS表中USER_ID最大值+1,关闭所有数据库文件 5.访问td,打开管理员界面,...
四种文件格式EDB,MDB数据库及INI,XML读取配置项操作源码。
Binding是用来实现界面控件的属性与后台数据之间的绑定,通过这种形式将前台界面与后台数据联系在一起达到界面与数据耦合的目的
用于打开*.mdb文件,比较好用,绿色版本解压即用; Access数据库文件(.mdb)是一种由微软开发的关系...在某些情况下,您可能需要访问和查看这些文件,以便执行其他操作,例如更改数据或导出数据,打开Access数据库文件(.mdb)
天盾MAC数据恢复软件是一款由天盾数据恢复中心所开发的mac数据恢复软件,该软件用以恢复苹果Mactonish操作系统下HFS/HFS /HFSX文件系统下丢失的数据,软件是在windows平台下安装使用,对HFS/HFS /HFSX文件系统的分区...
MPG、AVI、MPG、MTS、3GP、MOD、FLV、SWF等动画视频文件,JPG、NEF、CR2、TIF、X3F、PNG、RAF、DWG、PSD、CDR、LXE等图片文件,MP3、AMR音频文件,PDF文件,MDF、MDB数据库文件,Visio VSD等各种数据文件。...
MPG、AVI、MPG、MTS、3GP、MOD、FLV、SWF等动画视频文件,JPG、NEF、CR2、TIF、X3F、PNG、RAF、DWG、PSD、CDR、LXE等图片文件,MP3、AMR音频文件,PDF文件,MDF、MDB数据库文件,Visio VSD等各种数据文件。...
MPG、AVI、MPG、MTS、3GP、MOD、FLV、SWF等动画视频文件,JPG、NEF、CR2、TIF、X3F、PNG、RAF、DWG、PSD、CDR、LXE等图片文件,MP3、AMR音频文件,PDF文件,MDF、MDB数据库文件,Visio VSD等各种数据文件。...