微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Java – 连接到Linux上的SQL Server数据库

我已经下载并导入到我的项目中, 该 JDBC驱动程序应该支持Linux(尽pipe只在SUSE Linux上进行了testing)。

我想要的是能够通过Linux上的Java使用.mdf数据库查询显然需要运行,而不是简单地连接到数据库 – 如果我正确理解这一点。 我发现了一个关于我的问题,似乎有关于我的问题的有价值的信息。

所以我在想FreeTDS + JDBC的组合。 查询是否按预期执行,还是必须在Windows上原生使用数据库? 后者基本上压缩了Java提供的操作系统不可知论,如果可能的话,我想避免这种操作。

数据库本身并不是什么奇特的东西,只有几张桌子 – 毕竟这仅仅是一个学校的任务。 如有需要,我会提供更多信息。

如何在Linux中安装freetds?

freeTDS bash:在Microsoft sql Server中执行SQL查询

Linux和FreeTDS的Microsoft ODBC驱动程序?

freeTDS不使用其configuration

如何在Ubuntu 12.04中安装mssql

sqlAlchemy,FreeTDS和MSsql DBAPI错误不支持47和-1数据types之间的转换

遇到UnixODBC,FreeTDS和PyODBC的麻烦

PHP odbc_connect到mssql工程在linux / ubuntu命令行不是浏览器

使用FreeTDS从Ubuntu的RODBC MS sql访问

如何在Linux Ubuntu上configurationfreetds和unixodbc

一个mdf文件可以是一个旧的(基于JET的)Microsoft Access数据库文件,所以一个完全不同的产品sql server的JDBC驱动程序不会帮你太多。 在这里,有几篇文章解释了如何使用JDBC-ODBC桥通过ODBC驱动程序绕道访问Access数据库,但是由于您特别提到Linux不会帮助您。

我看到两种可能的(免费)方法

使用开源的jackcess软件包,允许跨平台的Java程序打开,读写MS Access数据库

将MSAccess数据库文件内容传输到具有本地Java驱动程序(即,大多数不是MS Access)的某个数据库

然而,一个mdf文件也可能是一个sqlserver数据库,但是在Linux下使用这个数据库也是相当棘手的,因为你需要一些版本的sql server才能打开它 – 在这里查看一些关于如何“附加“这样的mdf文件sqlserver的已安装的实例 – 但据我所知,没有在Linux下运行的sql server版本。 因此,除非你可以找到一些Windows机器来运行sqlserver,然后使用JDBC驱动程序连接到它,否则前面提到的两个选项都可能是有效的选择(例如,选项1 =将数据复制到MSAccess文件并访问该文件jackcess或选项2,将数据复制到一个Linux的宽容数据库一个体面的JDBC驱动程序,并使用它)

有些人被我的问题误导了(我不是母语为英语的人,可能就是这样),数据库本意是在本地运行(显式不在远程服务器上),而sql server + Linux组合则无法运行。 葡萄酒是可能的,但这太麻烦了。 因此,解决方案是简单地在Windows上使用sql server,或使用像MysqL这样的替代跨平台RDBMS。 不过,我会接受fvu的编辑答案,并感谢其他用户在他们投资自己的答案的时候。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐