热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

程序:创建、压缩Access数据库并修改密_access

*——————————————–*程序:创建、压缩access数据库并修改密码演示*设计:红雨*——————————————–Loc

* ——————————————–
* 程序: 创建、压缩access数据库并修改密码演示
* 设计: 红雨
* ——————————————–
Local lcMdbFile, lcRetuStr

http://www.gaodaima.com/38186.html程序: 创建、压缩Access数据库并修改密_access

lcMdbFile = [C:/Temp/TestCreaMdbFile.mdb]
lcPswd1 = [test1]
lcPswd2 = [test2]
lcPswd3 = [test3]
lcRetuStr = [创建、压缩Access数据库并修改密码演示:] + Chr(13)

If CreateMDB( lcMdbFile, lcPswd1)
    lcRetuStr = lcRetuStr + Chr(13) + [1、创建数据库成功         – 密码: ] + lcPswd1
    If CompactMDB( lcMdbFile, lcPswd1, lcPswd2 )
        lcRetuStr = lcRetuStr + Chr(13) + [2、压缩并修改密码成功     – 密码: ] + lcPswd2
        If ChangeMdbPassword( lcMdbFile, lcPswd2, lcPswd3 )
            lcRetuStr = lcRetuStr + Chr(13) + [3、单独修改数据库密码成功 – 密码: ] + lcPswd3
        Else
            lcRetuStr = lcRetuStr + Chr(13) + [3、单独修改数据库密码失败]
        Endif
    Else
        lcRetuStr = lcRetuStr + Chr(13) + [2、压缩并修改密码失败]
    Endif
Else
    lcRetuStr = lcRetuStr + Chr(13) + [1、创建数据库失败]
Endif

= MessageBox( lcRetuStr, 0+64+0, [红雨提示] )
Return

* ——————————————–
Function CreateMDB( tcMdbFile, tcpswdStr )
    * 创建 Access 数据库文件(.mdb)
    Local IsOK
    IsOK = .F.
    tcMdbFile = iif(Type([tcMdbFile])=[C], tcMdbFile, [])
    tcPswdStr = iif(Type([tcPswdStr])=[C], tcPswdStr, [])
    If File(tcMdbFile)
        Erase (tcMdbFile)
    Endif
    If !File(tcMdbFile)
        IsOK = .T.
        Local loEngine, lcOldError, lcCmdStrs
        lcOldError = On([ERROR])
        On Error IsOK = .F.
        loCatalog = CreateObject( [ADOX.Catalog] )
        lcCmdStrs = [Provider=Microsoft.Jet.OLEDB.4.0] ;
            + [;Data Source=] + tcMdbFile ;
            + [;Jet OLEDB:Database Password=] + tcPswdStr
        loCatalog.Create( lcCmdStrs )
        Release loCatalog
        loCatalog = Null
        On Error &lcOldError.
    Endif
    Return IsOK and File(tcMdbFile)
Endfunc

* ——————————————–
Function CompactMDB ( tcMdbFile, tcOldPswd, tcNewPswd )
    * 压缩 Access 数据库并设置密码
    Local IsOK
    IsOK = .F.
    tcMdbFile = iif(Type([tcMdbFile])=[C], tcMdbFile, [])
    tcOldPswd = iif(Type([tcOldPswd])=[C], tcOldPswd, [])
    tcNewPswd = iif(Type([tcNewPswd])=[C], tcNewPswd, tcOldPswd)
    If File( tcMdbFile )
        IsOK = .T.
        Local loEngine, lcTmpFile, lcOldError, lcCompOldStr, lcCompNewStr
        lcOldError = On([ERROR])
        On Error IsOK = .F.
        lcTmpFile = Addb(JustPath(tcMdbFile)) + subs(Sys(2015),3) + [.mdb]
        Rename (tcMdbFile) To (lcTmpFile)
        If !File(tcMdbFile) and File(lcTmpFile)
            lcCompOldStr = [Provider=Microsoft.Jet.OLEDB.4.0] ;
                +   [;Data Source=] + lcTmpFile ;
                +   [;Jet OLEDB:Database Password=] + tcOldPswd
            lcCompNewStr = [Provider=Microsoft.Jet.OLEDB.4.0] ;
                +   [;Data Source=] + tcMdbFile ;
                +   [;Jet OLEDB:Database Password=] + tcNewPswd
            loEngine = CreateObject( [JRO.JetEngine] )
            loEngine.CompactDatabase( lcCompOldStr, lcCompNewStr )
            Release loEngine
            loEngine = Null
            If File(tcMdbFile)
                Erase (lcTmpFile)
            Else
                Rename (lcTmpFile) To (tcMdbFile)
            Endif
        Else
            IsOK = .F.
        Endif
        On Error &lcOldError.
    Endif
    Return IsOK and File(tcMdbFile)
Endfunc

* ——————————————–
Function ChangeMdbPassword ( tcMdbFile, tcOldPswd, tcNewPswd )
    * 修改 Access 数据库的密码,必须独占打开数据库,使用前请确保没有其他程序使用数据库
    Local IsOK
    IsOK = .F.
    lcRetuStr = []
    tcMdbFile = iif(Type([tcMdbFile])=[C], tcMdbFile, [])
    tcOldPswd = iif(Type([tcOldPswd])=[C], tcOldPswd, [])
    tcNewPswd = iif(Type([tcNewPswd])=[C], tcNewPswd, [])
    If File( tcMdbFile )
        IsOK = .T.
        Local loADODB, lcOldError
        lcOldError = On([ERROR])
        On Error IsOK = .F.
        loADODB = CreateObject( [ADODB.Connection] )
        loADODB.Mode = 12
        loADODB.Provider = [Microsoft.Jet.OLEDB.4.0]
        loADODB.Properties([Jet OLEDB:Database Password]) = tcOldPswd
        loADODB.Open([Data Source=] + tcMdbFile)
        loADODB.Execute(‘ALTER DATABASE PASSWORD [‘ + tcNewPswd + ‘][‘ + tcOldPswd + ‘]’)
        loADODB.Close
        Release loADODB
        loADODB = Null
        On Error &lcOldError.
    Endif
    Return IsOK
Endfunc

* ——————————————–

欢迎大家阅读《程序: 创建、压缩Access数据库并修改密_access》,跪求各位点评,若觉得好的话请收藏本文,by



推荐阅读
  • 解决JavaScript中法语字符排序问题
    在开发一个使用JavaScript、HTML和CSS的Web应用时,遇到从SQLite数据库中提取的法语词汇排序不正确的问题,特别是带重音符号的字母未按预期排序。 ... [详细]
  • 本文探讨了如何在PHP与MySQL环境中实现高效的分页查询,包括基本的分页实现、性能优化技巧以及高级的分页策略。 ... [详细]
  • 长期从事ABAP开发工作的专业人士,在面对行业新趋势时,往往需要重新审视自己的发展方向。本文探讨了几位资深专家对ABAP未来走向的看法,以及开发者应如何调整技能以适应新的技术环境。 ... [详细]
  • 本文介绍了如何通过C#语言调用动态链接库(DLL)中的函数来实现IC卡的基本操作,包括初始化设备、设置密码模式、获取设备状态等,并详细展示了将TextBox中的数据写入IC卡的具体实现方法。 ... [详细]
  • 在 Ubuntu 22.04 LTS 上部署 Jira 敏捷项目管理工具
    Jira 敏捷项目管理工具专为软件开发团队设计,旨在以高效、有序的方式管理项目、问题和任务。该工具提供了灵活且可定制的工作流程,能够根据项目需求进行调整。本文将详细介绍如何在 Ubuntu 22.04 LTS 上安装和配置 Jira。 ... [详细]
  • 本文介绍了如何利用jQuery实现对网页上多个div元素的显示与隐藏控制,包括基本的toggle方法及更复杂的显示隐藏逻辑。 ... [详细]
  • 本文介绍了SIP(Session Initiation Protocol,会话发起协议)的基本概念、功能、消息格式及其实现机制。SIP是一种在IP网络上用于建立、管理和终止多媒体通信会话的应用层协议。 ... [详细]
  • 从CodeIgniter中提取图像处理组件
    本指南旨在帮助开发者在未使用CodeIgniter框架的情况下,如何独立使用其强大的图像处理功能,包括图像尺寸调整、创建缩略图、裁剪、旋转及添加水印等。 ... [详细]
  • Bootstrap 的轮播图(Carousel)组件提供了一种简单而灵活的方法,用于在网站上实现响应式幻灯片效果。此组件不仅支持图片展示,还兼容嵌入式框架、视频等多媒体内容。 ... [详细]
  • 本文将在前几篇关于Android测试理论知识的基础上,通过ApiDemoTest实例详细探讨如何使用ApplicationTestCase进行Android应用测试。建议读者先阅读Android测试教程系列中的相关内容,以便更好地理解本文的实践部分。 ... [详细]
  • 本文主要介绍如何在Mac操作系统中配置和安装Yii2的基础应用程序模板,同时提供解决常见安装问题的方法。对于高级或自定义应用模板的搭建,可参阅官方文档。 ... [详细]
  • 如何在U8系统中连接服务器并获取数据
    本文介绍了如何在U8系统中通过不同的方法连接服务器并获取数据,包括使用MySQL客户端连接实例的方法,如非SSL连接和SSL连接,并提供了详细的步骤和注意事项。 ... [详细]
  • 在Java开发中,保护代码安全是一个重要的课题。由于Java字节码容易被反编译,因此使用代码混淆工具如ProGuard变得尤为重要。本文将详细介绍如何使用ProGuard进行代码混淆,以及其基本原理和常见问题。 ... [详细]
  • SDWebImage第三方库学习
    1、基本使用方法异步下载并缓存-(void)sd_setImageWithURL:(nullableNSURL*)urlNS_REFINED_FOR_SWIFT;使用占位图片& ... [详细]
  • HPE OEM Brocade 300 交换机无中断固件升级指南
    本文详细介绍了如何通过FTP方式对HPE OEM Brocade 300交换机进行无中断固件升级,确保网络服务的连续性。 ... [详细]
author-avatar
百变精灵621126
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有