10

我一直在努力让 Java 程序连接到 MS SQL Server,我开始怀疑 MySQL 是否会成为我(学习)项目的更好选择。

Sun 的教程提到了 Java DB,但我从未在任何其他上下文中听说过它,因此它似乎不是最有用的数据库。

我很欣赏将 Java 连接到常用数据库的最自然方式的任何见解。

4

11 回答 11

9

也许您可以描述您在连接到 MS SQL 时遇到的问题。当然这是可能的,因此您可能有或没有做过一些小事情,这会阻止连接正常工作。

有许多带有 JDBC 驱动程序的开源数据库服务器。您可能会考虑的是HSQLDB,它具有完全内存模式,因此您甚至不必考虑设置服务器。这可能是学习 SQL 基础知识的好方法。

于 2009-07-04T12:17:06.583 回答
5

数据库的种类或名称不会影响您的教育过程,因为您将使用 JDBC。

我想你可以和任何人一起去。只需在您的机器上以正确的方式设置它并使用适当的连接字符串进行连接。

于 2009-07-04T12:20:10.493 回答
5

Java DB 是 Apache Derby 重新命名并包含在 JDK 中。没关系,而且它比本地运行的数据库更容易安装。

对数据库使用好的驱动程序非常重要!这可能会解决您所有的连接问题。

另请注意,如果您切换数据库,则很可能还需要更改 SQL,除非您使用 Hibernate 或 JPA 之类的层。

于 2009-07-04T14:33:05.860 回答
3

您可以尝试PostgreSQLMySQL

于 2009-07-04T12:23:46.400 回答
2

我推荐 MySQL 或 Oracle。您也可以从 Oracle 获得免费数据库,但是数据库的大小是有限的。

这样做的原因是那些是最常用的数据库,最好能对它们有所了解。使用 JDBC 和它的类似接口,但是在数据库之上编写代码,还有其他需要学习的东西。特别是如果您执行任何更复杂的应用程序。此外,使用数据库进行基本操作也总是很好的。

于 2009-07-04T12:41:20.700 回答
1

任何带有 JDBC 驱动程序的东西都应该可以正常工作。我认为您永远不会找到“最好”的明确答案,这是一个非常主观的问题。我们在工作中使用InterBase,没有任何问题。

于 2009-07-04T12:36:08.857 回答
1

微软甚至在其网站上有文档。谷歌关键字是“jdbc sql server”。

http://msdn.microsoft.com/en-us/data/aa937724.aspx

于 2009-07-04T12:46:48.273 回答
1

连接到外部关系数据库(相对于像 berkeley db 这样的内存数据库)的最简单方法是通过 JDBC。在继续使用任何其他存储方法之前,您应该熟悉 JDBC。对于大多数项目,使用 mysql 或 postgresql 都可以。不要担心在另一个上做出决定,对于较小的项目,差异并不那么重要。只要您使用的是 jdbc,以后如果您真的需要,您就可以在两者之间切换。

要开始,我会下载 mysql 并按照 sun 站点http://java.sun.com/docs/books/tutorial/jdbc/index.html上的 jdbc 教程进行操作。

以后你可能会决定你需要使用对象关系映射工具,比如hibernate,但我现在也不担心,只要熟悉jdbc和mysql或postgresql。

于 2009-07-04T15:02:20.933 回答
0

如果您想留在 Java 中,一种选择是Berkeley DB Java 版。它与来自 Sleepycat 的 BDB 软件相同,后者在嵌入式数据库市场上享有盛誉。

于 2009-07-04T12:53:17.853 回答
0

选择一个您可以弄清楚如何安装的数据库。大多数都非常简单,它会让您很好地了解使用数据库的情况。一旦你有一个工作的应用程序,尝试将它移植到另一个数据库。我建议将 JavaDB 用于第一个数据库,然后再使用另一个数据库 - Oracle、MySQL、Postgres 等。

于 2009-07-04T13:10:13.640 回答
0

我在使用 MSSql 时遇到的最大问题是使用过时的 JDBC -> ODBC Bridge 驱动程序时;这些在 ODBC 调用周围做了一个半途而废的 Java 包装器,这些调用是片状和脆弱的。如果您使用的是 JDBC ODBC Bridge,请将它们替换为 microsoft 提供的最新的本地 JDBC 驱动程序——它们的工作效率要好一百万倍。

于 2009-07-04T13:12:45.583 回答