【问题标题】:Updating access 2000 database through code in VB6通过VB6中的代码更新access 2000数据库
【发布时间】:2011-02-21 04:47:43
【问题描述】:

我有一个应用程序使用当前分发的 access 2000 数据库。

我需要使用客户计算机上的附加字段更新其中一个记录集。
我的数据控件工作正常,因为我将它们设置为以 access 2000 格式连接。但是,当我尝试用代码打开数据库时,出现无法识别的数据格式错误。

在他们的机器上替换或添加数据库的最佳方法是什么?

【问题讨论】:

  • 嗨,Mark - 如果不查看您用于连接到数据库的代码,很难判断,准确了解您正在使用哪些数据控件会很有帮助。 :-)
  • 您的意思是要更改表的结构吗?在我看来,改变你的记录集仅仅意味着改变你的代码。鉴于 VB6 标记,我假设您的前端是 VB6,而不是 Access,因此您将更改您的应用程序并向其分发更新。

标签: database ms-access vb6 ms-access-2000


【解决方案1】:

可以使用 VBScript、ADO 和 DDL 更新 Access 数据库。

strCon="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Example.mdb;" _
   & "Jet OLEDB:Database Password=pass;"

Set cn=CreateObject("ADODB.Connection")
cn.Open strCon

strSQL="ALTER TABLE Example ADD COLUMN Example Text (20)"
cn.Execute strSQL

更多连接字符串:www.connectionstrings.com

【讨论】:

    【解决方案2】:

    我更喜欢使用 DAO 集合来更新 BE 数据库模式,因为它可以让您更好地控制自己可以做什么。例如,您可以轻松地删除或创建表、记录、索引和关系。请参阅我的网站上的 TempTables.MDB page,它说明了如何在您的应用程序中使用临时 MDB,并提供示例代码来帮助您入门。

    【讨论】:

    • VBScript 的优点是非常小且易于传输(甚至可以剪切和粘贴),可以快速编写,并且可以在没有 Access 的站点上工作安装,只有运行时。如果您愿意,可以将 DAO 与 VBScipt 一起使用。
    • 我更喜欢将代码放在应用程序中,而不是放在单独的文件中。我也更喜欢使用 DAO,因为它可以更好地控制 Access 数据库文件。尽管这对于仅向表中添加一些字段的特殊更改可能并不重要。
    • 不是所有 Windows 副本上都安装了 DAO 和 Jet 4 吗?那么,是不是可以在 vbScript 中使用 DAO 呢?
    • 我已经仔细检查过,Jet 4.0 已安装在 2000 及更高版本的所有 Windows 版本上。我很确定 DAO DLL 也是如此。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-01-07
    • 1970-01-01
    • 2018-04-08
    • 1970-01-01
    • 2013-11-08
    • 2021-11-23
    • 2015-04-12
    相关资源
    最近更新 更多