- - PR -
SQLSever2000への接続
1
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2004-07-06 14:41
SQLSever2000への接続するプログラムでコンパイルはできたのですが、実行しようとすると
D:\Documents and Settings\imo>java ConnectSql2k java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClassInternal(Unknown Source) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at ConnectSql2k.main(ConnectSql2k.java:6) というエラーが出てしまいます。 jre\lib\extフォルダにmsutil.jar、mabase.jar、mssqlserver.jarファイルをコピーして追加ました。 コンパイルできあったクラスファイルへのパスがないという意味かなと思って、環境変数にCLASSPATHを作って、ConnectSql2k.classへのパスを指定しました。 データベースへの接続は初めてで原因がよくわからないので教えてください。 | ||||
|
投稿日時: 2004-07-06 14:55
エラーの内容は、JDBCドライバのクラスが見つからない、ということです。
クラスパスに追加すべきは、自分で作ったクラスへのパスではなく、JDBCドライバの jarファイルへのパスです。 ところで、作ってるものは普通のコンソールアプリでしょうか? Webアプリなら、Servletコンテナによっては環境変数のクラスパスは無視されることがあるので注意してください。 | ||||
|
投稿日時: 2004-07-06 15:13
実際に使っているJavaコマンドが、そのJREに入っているものと別物ということはないですか? Javaコマンドを絶対パスで指定して実行してみたらどうなるでしょうか。 | ||||
|
投稿日時: 2004-07-06 15:46
JDBCドライバのjarファイルへのパスを環境変数のパステキストに追加すると、プログラムが実行できるようになりました。
JAVAコマンドを絶対パスで実行しても、パステキストにjarファイルへのパスを追加しない状態では同じエラーで動きませんでした。 どうも有難うございました。 | ||||
1
