我正在学习数据库入门课程,其中一个练习是使用MS-Access。 不过,我在家里使用Linux,尽pipe我可以在大学使用计算机课程,但离开学校很方便(开放时间有限 – 我的学习时间大多是晚上)。
那么如何在Linux中使用Access文件( *.mdb )呢? 通过使用我的意思是改变表格,写作查询等。
是否有工具将其转换为另一种数据库格式(MysqL,postgresql甚至牛犊)?
也可能遇到什么问题?
CentOS 7的Java SELinux策略模块在哪里?
单独的线程优先检查使用命令行在Linux中
用于linux C ++的HTTPparsing库
WebDriverError错误:Chrome无法启动:exception退出
如何在awk中获取列名?
Linux程序在运行时找不到共享库
在Debian上添加SNMP支持到您自己的应用程序的最佳方法
Neo4j:对于一个巨大的数据集,Linux上的打开文件错误太多
持续监控Systemd日志
虽然有点过时了,但是我已经使用mdbtools取得了很好的成功,这是一组用于访问Access数据库并将其转换为其他格式的命令行工具。 我用它将数据库导入Postgresql。
如果您正在运行Ubuntu变体,则可以使用以下方法进行安装:
sudo apt-get install mdbtools
或者你可以从这里下载。
我目前正在尝试在Ubuntu上与葡萄酒访问,我似乎到达那里。 我发现我需要手动复制各种dll,但这很容易导致对这个主题的阅读不足。
从文档: 连接到Microsoft Access 。 但是,这似乎表明您需要在Windows主机上运行访问并通过ODBC连接…另请参阅已知问题 。
你不走运。 Access在Linux上没有真正的等价物,而Kexi是一个可以导入Access文件并且提供类似功能的有趣替代方法,一旦数据被导入,它实际上并不使用Access文件。
如果您的任务是使用表单等来开发Access应用程序,而不是仅仅使用mdb数据库作为存储,那么您可以使用兼容的Access版本(请参阅兼容性列表 )尝试Wine的最新版本,或者甚至更好地查找Windows机器,你确定它会工作。
不要忘记,使用装有Windows的虚拟机将帮助您在Linux机器上实现相同的功能。
如果你有一个工作与Access的任务,然后frigging找到一台Windows计算机,并在本机平台上进行练习访问。 做任何事情都是毫无意义的,因为你不会学习任何关于Access的有用信息。
如果任务是使用Jet数据存储,那么这是一个不同的故事。 如果是这样,那么你应该以不同的方式表达你的问题。 我不会推荐使用Jet而不是本机Windows文件系统。 当然,如果项目实际上是将数据读写到Jet数据文件中,那么如果您至少没有将Windows作为ODBC主机使用,那么您并不真正完成这项任务。
只要您只需要管理文件(表和视图,在Access中称为“查询”)的“数据库”维度,就可以通过连接(ODBC或OLEDB)使用Access。
一旦连接打开(请参阅此处的连接字符串),可以将sql命令发送到您的mdb数据库,例如(其中cn是连接对象):
cn.execute "CREATE TABLE myTableName (myTable_id autoNumber,myTable_code Text,...)"
请注意,MsAccess使用特定的DDL,看起来像标准的T-sql,但实际上并不是这样。 检查MsAccess帮助中的语法。
根据您的数据库(及其约束,默认值,使用的主键,关系,数据验证规则,aso),传输访问可以很容易,直接或甚至不可能。 每次数据库实现特定于访问的/非标准的sql规则时,都会遇到问题。
如果你真的需要将你的访问数据转换成其他的东西,我建议你(1)在MS-sql下导出(免费版本可以,在Access或本网站有一个升级向导), 2)使用像这样的附加工具来生成“CREATE DATABASE”sql脚本,包括或不包含数据插入,(3)使用此脚本尝试在其他数据库服务器上创建数据库及其数据。
在我以前的回答中有类似的问题。 这是一个小问题。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。