【问题标题】:synchronise Microsoft Access database with Silverstripe website database将 Microsoft Access 数据库与 Silverstripe 网站数据库同步
【发布时间】:2014-03-17 04:05:40
【问题描述】:

我的客户有一个现有的网站,其中包含会员详细信息、会员投资组合和目录,这些信息主要是在与 Silverstripe CMS 平台相关联的 php 中手动完成的,效果很好。他们的管理员也有一个离线的会员数据系统——微软Access,他们已经根据网站上的会员详细信息将会员详细信息添加到MS Access。

我的第一个想法是放弃 MS Access 并保持所有数据库在线,但他们甚至在网站建成之前就已经在 MS Access 上工作了多年,所以我们正在考虑保留 MS Access 以及网站数据库.

这是我第一次体验 MS Access,两种数据库结构的设置都不同。我只是想知道是否可以同步 MS Access 和网站数据库?例如,在线更新会员资格时,MS Access 会员数据会自动更新。

我将如何实现它?将使用哪些编程语言?同步离线 MS Access 和在线网站的任何安全问题?任何步骤、链接或学习链接都会有很大帮助。谢谢。

【问题讨论】:

  • 建议使用MSSQL/MySQL,不要使用MS Access,后者更适合离线访问。
  • 嗨猛禽,感谢您的回复。抱歉,我不确定您的意思,您能否详细解释一下或示例。有一个网站数据库和一个离线 MS Access 数据库,有什么办法可以将两者同步?
  • 您能否创建从 Access 到网站数据库的 ODBC 连接?
  • @grumpypanda 简而言之,MS Access 不够快,不支持很多数据库功能。不推荐用于网站。
  • 嗨 HansUp,我在这个阶段不确定,我只知道这个 MS Access,我还没有做过任何事情,所以我想在我跳之前先问路走向黑暗。有什么建议么?谢谢。

标签: php mysql database ms-access silverstripe


【解决方案1】:

一种解决方案可能是使用CsvBulkLoader 类,定期导出Access db 并通过自定义CsvBulkLoader 将其导入SilverStripe。 http://doc.silverstripe.org/framework/en/howto/csv-import

或者创建一个自定义BuildTask 来获取 Access 数据库并使用新数据更新 SS。这可能会给您最大的灵活性,并且可以作为 CRON 作业运行,因此您不必手动执行。 http://api.silverstripe.org/3.1/class-BuildTask.html

【讨论】:

    【解决方案2】:

    可能的解决方案: 在返回成员数据的网站上创建一个 Web 服务。创建一个调用该 Web 服务的脚本,然后更新本地 MS Access 数据库。

    【讨论】:

    • 嗨,Tarik,感谢您的回复。您指的是哪种网络服务和脚本?我认为网站会员数据库和 MS Access 会员数据库的结构不同。你能给我更详细的解释或例子吗?谢谢。
    • codeproject.com/Tips/671437/…。至于脚本,您可以在 Access 中使用 vbscript 或 VBA。
    • 我需要调查一下,我对 Access 不熟悉,所以感觉有点摸不着头脑。有了这个 vbscript,我们有什么办法可以使用 php 或 javascript 代替吗?您认为这可以同时同步网站和离线访问吗?例如,在线更新会员资格时自动更新 Access。有什么安全问题吗?谢谢!
    • 您可以像控制任何网页一样控制对网络服务的访问。至于 Access 数据库,您可以使用 VB 或您选择的任何语言来更新它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-09
    • 2019-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多