データベース接続エラー

このQ&Aのポイント
  • データベースの接続ができないエラーが発生しています。
  • エラーメッセージによると、テーブルが存在しないことが原因のようです。
  • エラーの解決策を探すために検索エンジンを利用しても解決できませんでした。
回答を見る
  • ベストアンサー

データベースの接続ができない

こんにちは。 いつもお世話になっております。 質問させていただきます。 データベースに接続するとき。 「con = ds.getConnection();」 のところで以下のようなエラーが出ます。 org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Base table or view not found message from server: "Table 'データベース名.データベース名' doesn't exist") ※データベース名は2つとも同じデータベース名です。 GOOGLEで探しても全く見つかりませんでした。 エラーの原因を教えていただけないでしょうか。 よろしくお願いします。

  • Java
  • 回答数1
  • ありがとう数2

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

  • ベストアンサー
回答No.1

環境を書かないと誰にもわかりませんよ。 とりあえず 「Base table or view not found message from server」 を読む限りでは、「テーブルかビューが見つからないよ。」と言ってるようです。 接続情報などは正しく記述できていますか? ↓Cannot create PoolableConnectionFactory の検索結果 http://www.google.co.jp/search?hl=ja&q=%22Cannot+create+PoolableConnectionFactory%22&lr=lang_ja ↓Base table or view not found message from serverの検索結果 http://www.google.co.jp/search?hl=ja&q=%22Base+table+or+view+not+found+message+from+server%22&lr=lang_ja

19746999
質問者

お礼

pcbeginnerさん、ご回答ありがとうございます。 申し訳ございません。環境を書くのを忘れていました。 tomcatでwebアプリケーションを作る場合です。 問題解決しました。 コンテキスト.xmlファイルの validationQueryプロパティに原因がありました。 <parameter> <name>validationQuery</name> <value>SELECT count(*) FROM ***</value> </parameter> ***の部分に存在しないテーブルを記述してしまいました。

関連するQ&A

  • 異なるデータベース間のリレーション

    phpmyadmin上の異なるデータベース間のテーブルでリレーションをかけたいのですが、うまくいきません。 new_linkフラグをtrueにすることで異なるデータベースを開くところまではできました。 アドバイスいただけないでしょうか。 ※DB1の中にtable1が、DB2の中にtable2がある //失敗する $con1 = mysql_connect("localhost",username,pass); mysql_select_db('DB1',$con1); $con2 = mysql_connect("localhost",username,pass,true); mysql_select_db('DB2',$con2); $sql = "select * from table1,table2 where table1.id = table2.id"; $result = mysql_query($sql) or die(mysql_error()); メッセージ⇒Table 'DB2.table1' doesn't exist //これは成功する $con1 = mysql_connect("localhost",username,pass); mysql_select_db('DB1',$con1); $con2 = mysql_connect("localhost",username,pass,true); mysql_select_db('DB2',$con2); $sql1 = "select * from table1"; $result1 = mysql_query($sql,$con1) or die(mysql_error()); $sql2 = "select * from table2"; $result2 = mysql_query($sql2,$con2) or die(mysql_error());

    • ベストアンサー
    • MySQL
  • MySQLのデータベースのチェックはできませんか

    MySQLでcreate viewで作ったテーブルが削除できません。 show tablesで出てくるのですが、 drop table xxxxxするとテーブルが存在しないというエラーが出ます。 たぶんデータベースが壊れていると思うのですが、チェックして修復みたいなことはできませんでしょうか。

    • ベストアンサー
    • MySQL
  • jspからmysqlに接続するメソッドについて

    Connection cn = DriverManager.DriverManager.getConnection(dsn); 引数のdsnには以下のように入力するとありました。 jdbc:mysql://ホスト名/データベース名[?属性情報] ホスト名ってなんですか? データベース名はcreate table文で作ったtableの名前ですか?それともmysqlのことですか? 非常に初歩的な質問かと思いますが、宜しくお願いします。

    • ベストアンサー
    • MySQL
  • python2.5を使用してSQLite3のデータベースを読み込みたいのです。

    いま、python2.5を使用してSQLite3のデータベースを読み込みたいのですが、うまく接続できません。pythonとSQLiteは単体ではうまく起動しているので、問い合わせ方に問題があるようなのですが、参考書のとおりに実行してもエラーが出てしまします。接続の書き方を教えていただければ幸いです。以下には、エラーが出た問い合わせを書きました。違うところがあれば指摘してください。 import sqlite3 con = sqlite3.connect("データベース名") cur = con.cursor() //ここまではうまくいきました。 cur.execute("""create table テーブル名(name text,age text)""") cur.execute("select * from テーブル名") print cur.fetchall()

  • VB2008プログラミング(データベース)

    VB2008でプログラムをしています。 データベースのSQL文でエラーが解決できません。 どなたか教えてください。 -内容ー データベースにテーブルを追加したいのですが、フィールド名に半角(No)を使うとエラーになります。 全角(No)に変えるだけでエラーはなくなりますがその理由がわかりません。 <エラー> Com = New OleDb.OleDbCommand("CREATE TABLE 物件(No INTEGER), cn) Com.ExcuteNonQuery() <正常>    Com = New OleDb.OleDbCommand("CREATE TABLE 物件(No INTEGER), cn) Com.ExcuteNonQuery()

  • データベースを複数作ったほうが良いでしょうか?

    Win+Apache+PHP+MySQLで、自宅サーバを立てています。 データベース名:DB_A  テーブル:Table_A データベース名:DB_B  テーブル:Table_B とするべきか、 データベース名:DB_A  テーブル:Table_A,Table_B とするべきか悩んでいます。 データベースについてあまり理解していないのですが、データベースを分けると何がどう変わるのでしょうか? (分けたほうが、高速化するのでしょうか?利点など教えていただければありがたいです。)

  • mysqlデータベースリストア

    MySQL初心者です。 基本的な質問ですが、教えてください。 MYSQLデータベースのバックアップは、コマンドラインからmysqldumpでバックアップを行うと思います。 CMD>mysqldump -u(ユーザーグループ) -p(パスワード) (データベース名) > (バックアップファイル名).sql バックアップSQLを使って再度リストアで入れなおす場合は、 drop database (データベース名);と create database (データベース名); を実行してから行う必要があるのでしょうか? (バックアップファイル名).sqlの中身を見てみると、 CREATE TABLE '(テーブル名)' (・・・・ ・・・)の前に DROP TABLE IF EXISTS '(テーブル名)'; のようにテーブルのdropをしてからの処理はあるのですが。

    • ベストアンサー
    • MySQL
  • データベースに接続できない

    postgresql-7.2.3.tar.gzインストール時には、下記内容でデータベースに接続できていました。 <?php $con = pg_connect("dbname='database_6' user='postgres' password='xxx'") if(!$con){ print "DB connection failed!!\n"; }else{ print "DB connection successful!!\n"; } ?> ところが、postgresql-8.0.26.tar.gzをインストールしたら、上記内容でデータベースに接続できなくなり、 Fatal error: Call to undefined function: pg_connect() in /usr/local/apache/htdocs/sql.php on line 2 というエラーメッセージが表示されます。 phpinfo();で確認もしましたが、ない感じです。Additiional Modulesのどこかを見れば、いいのでしょうか? pgsql.soは/usr/local/lib/php/extentions/pgsql.soにあります。/usr/local/lib/php.iniのextention_dir = ./を以下のように修正し、 extention_dir = /usr/local/lib/php/extentions extention=pgsql.so /usr/local/apache/bin/apachectl restart も実行しています。

  • MySQL・Tomcat・JSP 何度もSubmit実行すると、SQLNestedExceptionエラー

    現在、社内で勉強がてら、社内用アプリケーションを開発しております。 環境は以下です。 ・Windows2003ServerR2 ・Apache2.2.11 ・Tomcat6 ・MySQL5.1 ・Java1.6 フレームワークを使わずに、JSP/サーブレットで開発しております。 submitして、ブラウザの「戻る」を何度も繰り返したりして DB接続するサーブレットを何度も実行すると 「SQLNestedException」エラーになり、 サーバーリブート(もしくはtomcat/mysqlサービス再起動) しない限り、アプリに接続できなくなってしまいます。 tomcatのstdout.logには、以下が出力されております。 -------------------------------------------------------↓ org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot get a connection, pool error Timeout waiting for idle object at org.apache.tomcat.dbcp.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:104) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880) ・ ・ ・ -------------------------------------------------------↑ connectionのclose()をすれば良いようなことが、 ネットで調べてあったのですが、 射た感じの情報が 見つからなかったので、投稿させていただきました。 SJC-Pのバージョン5.0を取ってはいますが、 元々NotesDominoの開発が長く、JSPは初心者で、 申し訳ありません。 ご教示いただけるとありがたいです。 【補足】 すみません。try{}catchのcatch側に、close()を入れてませんでした。 しかし、close()を入れてないからといってサーバリブート(サービスリブート)しないかぎり、鍵が開けられないような感じになっているのは なんか変ですね。 引き続き調べてみますが、解る方いらっしゃいましたら、よろしくお願いいたします。 他力本願かもですが、生産性向上思考で、情報ご提供お願いいたします。

  • データベース接続について

    いつもお世話になっております。 PHP4.2でのpostgresqlへのネットワーク経由での接続なのですが、現在私の環境が apache 1.3 php4.2 OS WindowsXPです。 ネットワーク経由(LAN)にてLinuxサーバーのpostgresql(Ver7)へアクセスしようとしているのですが、 Warning: pg_connect() unable to connect to PostgreSQL server: FATAL 1: user "SYSTEM" does not exist in ↑上記のようなエラーがかえってきてしまいます。 ユーザー"system"をデータベースユーザーへ登録してgrant文で権限を与えたのですがうまくいきません。 どなたか、識者のかた、解決の糸口でもかまいませんのでアドバイスいただけないでしょうか? カテゴリもOSかデータベースか迷いましたが、こちらのほうが経験者が多いと思い投稿させていただきました。よろしくお願いいたします。

    • ベストアンサー
    • PHP