2009-07-04 10 views
9

私はMS SQL Serverに接続するためのJavaプログラムを手に入れようと苦労していました.MySQLが私の(学習)プロジェクトにとってより良い選択になるのではないかと思っています。Javaプログラムで使用するのに最適なデータベースは何ですか?

SunのチュートリアルではJava DBを参照していますが、他のコンテキストでこれを聞いたことがないので、学ぶには最も有用なデータベースではないようです。

一般的に使用されているデータベースにJavaを接続する最も自然な方法についての洞察があります。

答えて

5

データベースの種類または名前は、JDBCを使用する際の教育プロセスには影響しません。

私はあなたと一緒に行くことができると思います。あなたのマシン上に適切な方法でセットアップし、適切な接続文字列で接続してください。

9

おそらく、あなたはMS SQLへの接続に伴う問題を記述することができます。もちろん、それは可能ですので、あなたが持っているか、または接続が動作しないようにしていないことがあります。

多くのオープンソースデータベースサーバにJDBCドライバがあります。あなたが考えるかもしれない1つはHSQLDBで完全にインメモリモードなので、サーバーの設定について考える必要はありません。これはおそらく、SQLの基礎を学ぶのに最適な方法です。

+1

HSQLDBのほかに、H2(http://www.h2database.com/)もデータベースプログラミングを学ぶのに適しています。個人的には、良いWeb GUIとより良いトランザクション分離のために、H2からHSQLDBを好む。 –

3

あなたは正常に動作する必要がありますJDBCドライバとのいずれかPostgreSQLまたはMySQL

1

何かを試みることができます。私はあなたが "最高"であることに対する決定的な答えを見つけることは非常に主観的な質問ではないと思います。私の仕事ではInterBaseを使用しており問題はありません。

2

私はMySQLまたはOracleをお勧めします。オラクルからは無料のデータベースも入手できますが、データベースのサイズは限られています。

これは主に使用されているデータベースであり、それらの可視性を確認するのによいことです。 JDBCを使用すると、同様のインターフェースですが、データベースの上でコードを実行すると、他にも学ぶ必要があります。特に少し複雑なアプリケーションを作成する場合は特にそうです。また、データベースを使った基本的な操作で手を汚すことは常に良いことです。

+0

Oracleは、本番環境に置かない限り、無料です。 –

0

あなたはJavaで滞在したい場合は、1つのオプションがBerkeley DB Java Editionです。これは、Sleepycat社のものと同じBDBソフトウェアで、組込みデータベース市場では定評があります。

0

インストール方法を理解できるデータベースを1つ選びます。ほとんどのものは非常に簡単で、データベースの使用方法を知ることができます。動作しているアプリケーションがあれば、別のデータベースに移植してみてください。最初にJavaDBを使用することをお勧めします。もう1つは、Oracle、MySQL、Postgresなどです。

0

MSSqlを使用した場合の最大の問題は、古くなったJDBC - > ODBCブリッジドライバー;これらは、脆弱で脆弱なODBC呼び出しを中心に半分のJavaラッパーを実行します。 JDBC ODBC Bridgeを使用している場合は、マイクロソフトの最新のネイティブJDBCドライバで置き換えてください。何百万回もうまく動作します。

5

Java DBは、Apache Derbyとも呼ばれ、JDKに含まれています。OKです。ネイティブで稼動しているデータベースよりもインストールがはるかに簡単です。

データベースに良いドライバを使用することは非常に重要です!それはあなたの接続の問題をすべて解決するかもしれません。

また、データベースを切り替えると、HibernateやJPAなどのレイヤーを使用しない限り、SQLを変更する必要があります。

+0

ダービーはたぶん学ぶべき素晴らしいDBMSではありません。それは辛いほど遅く、SQL領域には欠けています。最後に私は6ヶ月前にこれを使用しましたが、これには "MERGE"/"INSERT ... ON DUPLICATE KEY" DML文とクエリのLIMIT/OFFSETオプションが含まれていました。他の多くの欠けている特徴の中で。 – BobMcGee

+0

「痛いほど遅い」部分を説明している良いページへのリンクがありがたいです。 LIMIT/OFFSETはデータベースに依存するため、おそらく他のものと呼ばれています。 –

1

外部リレーショナルデータベース(berkeley dbのようなメモリデータベースではなく)に接続する最も簡単な方法は、JDBCを使用する方法です。他のストレージ・メソッドに進む前に、JDBCに慣れておく必要があります。ほとんどのプロジェクトでは、mysqlまたはpostgresqlのいずれかを使ってうまくいくでしょう。一方を他方で決定することについて心配する必要はありません。小規模なプロジェクトでは、その違いはそれほど重要ではありません。 jdbcを使用している限り、本当に必要な場合は後で切り替えることができます。

私はmysqlをダウンロードし、sunsite http://java.sun.com/docs/books/tutorial/jdbc/index.htmlのjdbcチュートリアルに従います)。

後でhibernateのようなオブジェクト・リレーショナル・マッピング・ツールを使用する必要があると判断するかもしれませんが、今のところ気にする必要はなく、jdbcとmysqlまたはpostgresqlのどちらかに慣れてください。

関連する問題