|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
使用filesystemobject,可以对服务器上的文件进行操作,浏览、复制、移动、删除等。有ado的支持,asp对数据库的操作非常得心应手。你甚至可以像使用本地数据库那样,管理远程主机上的数据库,对表格、记录进行各种操作。编程|技能<%
#######以下是一个类文件,上面的注解是挪用类的办法################################################
#注重:假如体系不撑持创建Scripting.FileSystemObject工具,那末数据库紧缩功效将没法利用
#Access数据库类
#CreateDbFile创建一个Access数据库文件
#CompactDatabase紧缩一个Access数据库文件
#创建工具办法:
#Seta=NewDatabaseTools
#by(萧冷雪)s.f.
#########################################################################################
ClassDatabaseTools
PublicfunctionCreateDBfile(byValdbFileName,byValDbVer,byValSavePath)
创建数据库文件
IfDbVeris0ThenCreateAccess97dbFile
IfDbVeris1ThenCreateAccess2000dbFile
OnerrorresumeNext
IfRight(SavePath,1)""OrRight(SavePath,1)"/"ThenSavePath=Trim(SavePath)&""
IfLeft(dbFileName,1)=""OrLeft(dbFileName,1)="/"ThendbFileName=Trim(Mid(dbFileName,2,Len(dbFileName)))
IfDbExists(SavePath&dbFileName)Then
Response.Write("对不起,该数据库已存在!")
CreateDBfile=False
Else
DimCa
SetCa=Server.CreateObject("ADOX.Catalog")
IfErr.number0Then
Response.Write("没法创建,请反省毛病信息
"&Err.number&"
"&Err.Description)
Err.Clear
Exitfunction
EndIf
IfDbVer=0Then
callCa.Create("Provider=Microsoft.Jet.OLEDB.3.51;DataSource="&SavePath&dbFileName)
Else
callCa.Create("Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&SavePath&dbFileName)
EndIf
SetCa=Nothing
CreateDBfile=True
EndIf
Endfunction
PublicfunctionCompactDatabase(byValdbFileName,byValDbVer,byValSavePath)
紧缩数据库文件
0为access97
1为access2000
OnErrorresumenext
IfRight(SavePath,1)""OrRight(SavePath,1)"/"ThenSavePath=Trim(SavePath)&""
IfLeft(dbFileName,1)=""OrLeft(dbFileName,1)="/"ThendbFileName=Trim(Mid(dbFileName,2,Len(dbFileName)))
IfDbExists(SavePath&dbFileName)Then
Response.Write("对不起,该数据库已存在!")
CompactDatabase=False
Else
DimCd
SetCd=Server.CreateObject("JRO.JetEngine")
IfErr.number0Then
Response.Write("没法紧缩,请反省毛病信息
"&Err.number&"
"&Err.Description)
Err.Clear
Exitfunction
EndIf
IfDbVer=0Then
callCd.CompactDatabase("Provider=Microsoft.Jet.OLEDB.3.51;DataSource="&SavePath&dbFileName,"Provider=Microsoft.Jet.OLEDB.3.51;Data
Source="&SavePath&dbFileName&".bak.mdb;JetOLEDB;EncryptDatabase=True")
Else
callCd.CompactDatabase("Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&
SavePath&dbFileName,"Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&
SavePath&dbFileName&".bak.mdb;JetOLEDB;EncryptDatabase=True")
EndIf
删除旧的数据库文件
callDeleteFile(SavePath&dbFileName)
将紧缩后的数据库文件复原
callRenameFile(SavePath&dbFileName&".bak.mdb",SavePath&dbFileName)
SetCd=False
CompactDatabase=True
EndIf
endfunction
PublicfunctionDbExists(byValdbPath)
查找数据库文件是不是存在
OnErrorresumeNext
Dimc
Setc=Server.CreateObject("ADODB.Connection")
c.Open"Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&dbPath
IfErr.number0Then
Err.Clear
DbExists=false
else
DbExists=True
EndIf
setc=nothing
Endfunction
PublicfunctionAppPath()
取以后实在路径
AppPath=Server.MapPath("./")
Endfunction
PublicfunctionAppName()
取以后程序称号
AppName=Mid(Request.ServerVariables("SCRIPT_NAME"),(InStrRev(Request.ServerVariables("SCRIPT_NAME"),"/",-1,1))+1,Len(Request.ServerVariables("SCRIPT_NAME")))
EndFunction
PublicfunctionDeleteFile(filespec)
删除一个文件
Dimfso
Setfso=CreateObject("Scripting.FileSystemObject")
IfErr.number0Then
Response.Write("删除文件产生毛病!请检察毛病信息
"&Err.number&"
"&Err.Description)
Err.Clear
DeleteFile=False
EndIf
callfso.DeleteFile(filespec)
Setfso=Nothing
DeleteFile=Tr</p>因为现在数据库都使用标准的SQL语言对数据库进行管理,所以如果是标准SQL语言,两者基本上都可以通用的。SQLServer还有更多的扩展,可以用存储过程,数据库大小无极限限制。 |
|