ODBC与Ubuntu上的MS-Access的连接 [英] ODBC connection to MS-Access on Ubuntu

查看:77
本文介绍了ODBC与Ubuntu上的MS-Access的连接的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们的一名员工创建了Microsoft Access数据库并构建了Joomla!周围的模块.它当前正在WAMP服务器上运行,并具有与accdb文件的ODBC连接.

One of our employees created a Microsoft Access Database and has built a Joomla! module around it. It is currently running on a WAMP server, with an ODBC connection to the accdb file.

如何在Ubuntu上为Access数据库创建ODBC连接?

How can I create an ODBC connection on Ubuntu for the Access database?

在这一点上,我愿意将数据库本地驻留在我的Ubuntu服务器或某个地方的SMB共享上.
已经提出将其从Access移到MySql.也许可以归结为这一点,但是我真的被迫寻找其他选择.

At this point, I'm open to having the DB live locally on my Ubuntu server, or on an SMB share somewhere.
Moving it from Access to MySql has already been proposed. It may come down to that, but I'm really being pressured to find another option.

有人知道这是否可行以及如何实现吗?

Does anyone know if this is possible and how to accomplish it?

很抱歉是否已经提出了这个问题;我确实确实已经在寻找它,但是找不到在Linux上通过ODBC连接Access的任何特定内容.

I'm sorry if this question has already been asked; I truly did look for it already, but couldn't find anything specific to connecting Access via ODBC on Linux.

推荐答案

我不确定我是否完全理解这里的用例,但是这里有一些想法:

I'm not entirely sure I understand the use case here, but here are a few thoughts:

  • 访问数据库是基于文件的数据库,因此没有服务器.
    这意味着数据库文件本身可以驻留在本地Windows计算机,Linux网络框上的Windows网络共享或SMB共享上.

  • Access databases are file-based databases and therefore server-less.
    This means that the database file itself can reside on a local Windows machine, a windows network share or a SMB share on a linux box.

但是,查询数据库的应用程序必须有权访问必要的驱动程序才能操作数据库.
在Windows上,这不是问题:所有Windows版本均已预装有旧版.mdb格式的Jet驱动程序. 对于新的.accdb格式,必须具有MSOffice 2007/2010/2013,Access 2007/2010/2013,Access Runtime 2007/2010/2013或独立的ACE驱动程序之一,才能使用新的数据库格式.

However, the application that queries the database must have access to the necessary drivers to manipulate the database.
On Windows, this is not an issue: All Windows version come pre-installed with the Jet drivers for the old .mdb format. For the new .accdb format, you must have one of MSOffice 2007/2010/2013, Access 2007/2010/2013, Access Runtime 2007/2010/2013 or the standalone ACE driver installed to be able to use the new database format.

在Linux上,mdbtools软件包与.mdb文件格式提供了一定程度的兼容性,从而允许Linux应用程序直接查询和修改这样的数据库.
用于处理(.mdb.accdb)数据库的另一个开源库(java)是 jackcess .

On Linux, the mdbtools package provides some degree of compatibility with the .mdb file format, allowing such a database to be queried and modified by a Linux application directly.
Another Open Source library (java) for manipulating (.mdb and .accdb) databases is jackcess.

ODBC驱动程序,但是据我所知,它们是商业性的并且可能相当昂贵,请参见

ODBC drivers for Linux exist, but as far as I know, they are commercial and can be fairly expensive, see the easysoft Access ODBC Driver.

另请参阅以下SO问题:从linux连接访问数据库

See also this SO question: Connecting to access database from linux

基本上,如果您正在寻找一个简单的解决方案(开源),那么在Linux上使用MySQL或使用本地SQLite数据库将更加可行.

Basically, if you are looking for an easy solution that would be Open Source, going to MySQL or using a local SQLite database will be a lot more workable on Linux.

这篇关于ODBC与Ubuntu上的MS-Access的连接的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆