您的位置: 旅游网 > 综艺 >> 合唱团

中压缩整理数据库文件覆盖

发布时间:2021-10-26 07:16:59

下面直接给出方法函数:

1、申明外部函数,用来取系统的临时路径。

FUNCTION ulong GetTempPath(ulong nBufferLength,ref string lpBuffer) LIBRARY \"l\" ALIAS FOR \"GetTempPathA\"

2、核心方法:

global type gf_CompactAndRepairAccessDB from function_object

end type

forward prototypes

global function integer gf_compactandrepairaccessdb (string as_mdb)

end prototypes

global function integer gf_compactandrepairaccessdb (string as_mdb);

//检查数据库文件是否存在

if not FIleExists(as_MDB) then return -1

//创建临时文件名

string ls_tmpFIle

ls_tmpFIle =Space(255)

GetTempPath(255,ls_tmpFIle)

ls_tmpFIle+=\"b\"

//创建DBEngine

integer result

oleobject ole_DBEngine

那个人说页吧老大当时被D站 ole_DBEngine = create oleobject

result =ole_nnecttonewobject(\"tEngine\")

//创建失败

ifresult0 then return result

//通过DBEngine 压缩数据库文件

string sProvider = \'Provider=EDB.4.0;\'

string sOldMDB,sNewMDB

sOldMDB = sProvider + \'Data Source= \' + as_MDB

sNewMDB = sProvider + \'Data Source= \' + ls_tmpFIle

ole_pactDatabase(sOldMDB, sNewMDB)

destroy ole_DBEngine

//拷贝刚刚压缩过临时数据库文件至原来位置

FIleCopy(ls_tmpFIle,as_MDB,true)

//删除临时文件

FileDelete(ls_tmpFIle)

return 0

end function

3、调用方法

gf_compactandrepairaccessdb(\"E:\\eNo\\b\")

应注意的是,在压缩和修复数据库的过程中,不能有其它的操作打开该数据库,否则操作会失败,因此请先关闭掉该数据库的连接,否则执行会报错。

此外这个函数经过修改后,可实现备份数据库的功能,相比较更简单一些,这里就不提供了。

查看本文来源

邯郸哪家白癜风医院好
成都好医院妇科
卒中高血压有哪些症状
猜你会喜欢的
猜你会喜欢的