• ベストアンサー

JSPでデータベース接続

JSPを使用してMySQLデータベースに接続しようとしていますが java.sql.SQLException: Access denied for user ''@'localhost' (using password: NO)とエラーが出て 接続ができません。 そこで質問なのですが、上記のエラーは何が原因なのでしょうか。MySQLなのかJSPなのか、エラーの原因がわかりません。どなたか原因を教えていただけないでしょうか。お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • fortranxp
  • ベストアンサー率26% (181/684)
回答No.5

おまけ >con = DriverManager.getConnection(url,"****","\\\\") Connection con = DriverManager.getConnection(url,"****","\\\\") >stmt = con.createStatement(); Statement stmt = con.createStatement(); ですよね。。。。

green64
質問者

お礼

質問に対して回答をくださった皆さん、 この場を借りてお礼を言わせてもらいます。 本当にありがとうございました。

green64
質問者

補足

上記のように記述した場合、 呼び出したり、エラーが起こったりと 不安定な状態になりました。 一体何が原因なのでしょうか。 回答ありがとうございました。

その他の回答 (4)

  • fortranxp
  • ベストアンサー率26% (181/684)
回答No.4

もしかして >con = DriverManager.getConnection(url); con = DriverManager.getConnection(url,"****","\\\\") ****はUSERID \\\\はパスワード

green64
質問者

お礼

記述通りにしてみましたところ、 無事表示されるようになりました。 IDとパスワードの挿入位置が違ってたようですね。 まだ始めたばかりで勉強不足なところもあり 大変参考になり、助かりました。 ありがとうございました。

noname#49664
noname#49664
回答No.3

Access denied for user ''@'localhost' (using password: NO) となっていますが、ログインするユーザ名が指定されていませんね。普通に指定してあってはじかれたなら、Access denied for user 'root@localhost'というような形になるはずです。なんか指定の仕方が変な気がしますが、ユーザ名はどのように指定してますか? 接続しているあたりの処理を補足していただけると回答しやすくなると思います。

green64
質問者

補足

処理ですが、 // ドライバ指定  Class.forName("org.gjt.mm.mysql.Driver"); // データベース(test)へ接続  String url = "jdbc:mysql://localhost:3306/test";  con = DriverManager.getConnection(url); // ステートメントオブジェクトを生成  stmt = con.createStatement(); // テーブル(tes)の行を全て取得するSQL文を作成  String sql = "select * from tes"; // クエリーを実行して結果セットを取得  ResultSet rs = stmt.executeQuery(sql); 上記のようにすると質問文のエラーが表示されます。 しかし、  String user = "ABC";  String pass = "abc";  String db = "test"; と(仮に)定義し、データベースへ接続の部分を  String url = "~test",user,pass,db; とすると「JSPクラスをコンパイルできません」 と表示されます。

  • fortranxp
  • ベストアンサー率26% (181/684)
回答No.2

>JSPを使用してMySQLデータベースに接続しようとしていますが 通常のJavaアプリからやったらどうなりますか?

green64
質問者

補足

Javaファイルを作成して試してみたところ 接続できました。

回答No.1

順序だてて物事を整理していくと問題解決が早いと思いますよ。 ますは、 データベースが設定されているのか。 接続しようとしているユーザは設定済みか。 コンソール等から接続できるのか。 を調べてみてはどうでしょう? コンソール等からJSPで接続しようとしているユーザで 接続できるなら問題はJSP側にありますし、そうでないなら MYSQL側に問題があると思います。

green64
質問者

補足

Javaファイルでの接続が成功したので JSPに問題があるとわかりました。

関連するQ&A