送分:我想实现数据库的不定期备份,加了一个meCopyMDB函数,为什么执行时提示:拒绝的权限?

lpzwm 2004-09-21 09:04:51
谢谢!在线等
...全文
211 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
hwcqboy 2004-09-22
  • 打赏
  • 举报
回复
应该是你的程序中有打开连接
huitiansou 2004-09-22
  • 打赏
  • 举报
回复
上面都没有说到点子上。

运用FileCopy函数需要系统的最高权限
例如:在Windows2000上运行需要Administrator级权限
yinweihong 2004-09-21
  • 打赏
  • 举报
回复
用shell copy吧
lfshf 2004-09-21
  • 打赏
  • 举报
回复
肯定有打开了,可以先执行下列程序,然后就可以用filecopy了,这是DAO的,你可能要修改一下

Public Sub CloseDBConnect()
' 关闭数据库对象并且释放内存
On Error Resume Next

Dim WS As Workspace
Dim DB As Database
Dim rs As Recordset

For Each WS In Workspaces
For Each DB In WS.Databases
For Each rs In DB.Recordsets
rs.Close
Set rs = Nothing
Next
DB.Close
Set DB = Nothing
Next
WS.Close
Set WS = Nothing
Next
End Sub

lpzwm 2004-09-21
  • 打赏
  • 举报
回复
我的ACCESS并没有打开呀
RUKYO 2004-09-21
  • 打赏
  • 举报
回复
不是这个意思,我是指你在备份前,先手动把ACCESS关闭掉,并非叫你关闭程序中引用的ADO对象。
lpzwm 2004-09-21
  • 打赏
  • 举报
回复
我在程序中没有打开数据库呀,利用FileCopy来备份的
lpzwm 2004-09-21
  • 打赏
  • 举报
回复
应该在什么地方关闭?如何关闭?
RUKYO 2004-09-21
  • 打赏
  • 举报
回复
在备份时候关闭掉要备份的MDB文件。
lpzwm 2004-09-21
  • 打赏
  • 举报
回复
Public Sub meCopyMDB()
Static bCopied As Boolean
Static dCopyDate As Date
Dim Source As String
Dim destination As String
Dim strMsg As String
On Error GoTo errCopyMDB
If dCopyDate = Date Then
bCopied = True
Else
bCopied = False
End If
If bCopied Then
MsgBox "今天已经备份过数据库文件了!", vbInformation, "数据备份"
Exit Sub
End If
Source = "mdb\db1.mdb"
destination = "数据库备份\dat1.mdb"
strMsg = "源数据库文件是: " & Source & Chr(13) & Chr(10) _
& "备份数据库文件是:" & destination & Chr(13) & Chr(10) _
& Chr(13) _
& "要备份吗?"


If MsgBox(strMsg, vbYesNo + vbQuestion, "数据备份") = vbNo Then Exit Sub

If Dir(Source) = "" Then '--------------------------------------------- 1.
strMsg = "数据库文件: " & Source & " 丢失.备份失败!" & Chr(13) & Chr(10) _
& "请通知有关人员恢复此文件!"
MsgBox strMsg, vbExclamation, "备份失败!"
Else
If Dir("数据库备份\", vbDirectory) = "" Then '--- 2.
MkDir ("数据库备份\")
MsgBox "在C:盘安装目录建立了一个备份文件夹:数据库备份\", vbInformation, "数据备份"
End If

FileCopy Source, destination
bCopied = True
dCopyDate = Date

MsgBox "备份结束.", vbInformation, "数据备份"

End If '------------------------------------------------------------ 1.
Exit Sub
errCopyMDB:
Call meErr("meCopyMDB")
End Sub
代码应该没问题,有时候也能备份上,有时不可以
RUKYO 2004-09-21
  • 打赏
  • 举报
回复
使用FILECOPY,发生“实时错误:70,被拒绝的权限”



编号:QA000525
建立日期: 1999年2月13日 最后修改日期:1999年2月13日
所属类别:

Visual Basic - 数据库
Visual Basic - 错误信息
Visual Basic - 磁盘、文件和目录

mj:
我有一个问题想请教,就是我在程序中想备份ACCESS数据库文件,使用FILECOPY,但程序总是显示“实时错误:70,被拒绝的权限”,不知为何?还望指教。

回答:

估计你在复制文件的时候,你的数据库被打开了。如果数据库被打开(除非你的数据库是以只读方式打开的),读文件操作会被禁止,所以无法拷贝文件。解决的办法就是暂时关闭数据库(包括数据控件)。

此问题由李海回答。
RUKYO 2004-09-21
  • 打赏
  • 举报
回复
Access备份代码这里有很多,搜一下就大把了。这是FAQ的:
http://community.csdn.net/Expert/FAQ/FAQ_Index.asp?id=195584
RUKYO 2004-09-21
  • 打赏
  • 举报
回复
你的备份MDB函数代码是怎样的呢?能详细些吗?
内容概要:本文系统研究了基于粒子群算法(PSO)的电动汽车充电动态优化策略,依托Matlab平台实现完整的仿真模型与优化算法,旨在通过智能优化手段提升充电过程的经济性与电网友好性。研究构建了综合考虑电网负荷曲线、实电价波动、用户充电需求及段偏好等多重因素的动态优化模型,采用粒子群算法高效求解电动汽车集群的最优充电调度方案,有效实现了削峰填谷、降低用户充电成本、提升电网运行稳定性以及促进可再生能源消纳的多重目标。文中提供了详尽的Matlab代码实现流程与仿真案例分析,便于读者复现结果并进行二次开发与算法拓展。; 适合人群:具备一定电力系统基础知识和Matlab编程能力的研究生、科研人员及工程技术人员,尤其适合从事电动汽车、智能电网、需求侧管理、优化调度及相关领域研究的专业人士。; 使用场景及目标:①应用于电动汽车充电站或充电服务平台的智能调度系统设计与优化;②作为高校与科研机构在智能优化算法、能源互联网、智慧交通等交叉学科教学与科研项目的核心参考案例;③支撑电力系统中需求侧响应、分布式能源协同控制及车网互动(V2G)技术的研究与工程实践。; 阅读建议:建议读者结合文中提供的Matlab代码进行仿真实践,重点关注粒子群算法在充电优化模型中的参数设置、收敛特性分析与全局寻优能力评估,同可将其拓展至与其他智能算法(如遗传算法、灰狼优化、鲸鱼算法等)的性能对比研究,以深化对不同优化策略在复杂能源系统中适用性的理解。

1,217

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧