SEの転職活動で使うべきサイト・エージェント 目指せ年収アップ
SEの転職活動で使うべきサイト・エージェント 目指せ年収アップ
東南アジアをバックパッカーしながら転職活動をした記録
東南アジアをバックパッカーしながら転職活動をした記録
7年目で初の転職活動 2カ月で内定獲得した記録
7年目で初の転職活動 2カ月で内定獲得した記録
おすすめのプログラミングスクール めざせ就職・年収アップ!
おすすめのプログラミングスクール めざせ就職・年収アップ!
メンズクリア2年通い放題入会! その後のヒゲ状況(不定期更新)
メンズクリア2年通い放題入会! その後のヒゲ状況(不定期更新)
ブログ開始3年が経った月収が1万超えてた!
ブログ開始3年が経った月収が1万超えてた!
プログラミング独学・スクール・就職(目次)
プログラミング独学・スクール・就職(目次)
previous arrowprevious arrow
next arrownext arrow
 
Shadow
Java/AndroidStudio

android MySql接続 SQLException: No suitable driver 対応方法!

原因を調べることに時間がかかりましたが、調査をしました。

調査した結果を更新していきます。

前回発生していたExceptionについて

java.sql.SQLException: No suitable driver

このExceptionはクラスパスを通すことで解決できました。

手順は以下です。

①JDBCのドライバーのダウンロード

こちらからダウンロードできます。

http://dev.mysql.com/downloads/connector/j/

複数回解凍を行って「~.jar」のファイルを取得してください

何回解凍したかは忘れましたが…

②JDBCドライバーの配置

プロジェクトフォルダにあるlibsフォルダに配置してください。

③JDBCのドライバーを認識させる

ちょっと文章で書くのは難しいので、キャプチャで説明します。

プロジェクトのビューのプロジェクトの名前で右クリックするし、
メニューのOpen Module Settingsをクリック

Project StructureのDependanciesタブを開き、
右端の「+」をクリックする

libsフォルダに配置したJDBCドライバーを選択する

DBへ登録後

エミュレータからMySqlのDBへ登録を行ってみましたが、

以下のエラーが発生しました

02-19 12:52:01.747 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: java.sql.SQLException: Unable to connect to any hosts due to exception: java.net.SocketException: java.net.ConnectException: failed to connect to localhost/127.0.0.1 (port 3306): connect failed: ECONNREFUSED (Connection refused)
02-19 12:52:01.747 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: ** BEGIN NESTED EXCEPTION **
02-19 12:52:01.748 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: java.net.SocketException
02-19 12:52:01.748 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: MESSAGE: java.net.ConnectException: failed to connect to localhost/127.0.0.1 (port 3306): connect failed: ECONNREFUSED (Connection refused)
02-19 12:52:01.748 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: STACKTRACE:
02-19 12:52:01.749 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: java.net.SocketException: java.net.ConnectException: failed to connect to localhost/127.0.0.1 (port 3306): connect failed: ECONNREFUSED (Connection refused)
02-19 12:52:01.749 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:143)
02-19 12:52:01.749 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: at com.mysql.jdbc.MysqlIO.(MysqlIO.java:225)
02-19 12:52:01.749 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: at com.mysql.jdbc.Connection.createNewIO(Connection.java:1805)
02-19 12:52:01.749 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: at com.mysql.jdbc.Connection.(Connection.java:452)
02-19 12:52:01.749 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:411)
02-19 12:52:01.750 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: at java.sql.DriverManager.getConnection(DriverManager.java:179)
02-19 12:52:01.750 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: at java.sql.DriverManager.getConnection(DriverManager.java:213)
02-19 12:52:01.750 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: at com.example.loosecarrot.whogotmessage.HttpRqst.doInBackground(HttpRqst.java:96)
02-19 12:52:01.750 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: at com.example.loosecarrot.whogotmessage.HttpRqst.doInBackground(HttpRqst.java:22)
02-19 12:52:01.750 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: at android.os.AsyncTask$2.call(AsyncTask.java:292)
02-19 12:52:01.750 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: at java.util.concurrent.FutureTask.run(FutureTask.java:237)
02-19 12:52:01.767 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
02-19 12:52:01.767 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
02-19 12:52:01.767 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
02-19 12:52:01.767 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: at java.lang.Thread.run(Thread.java:818)
02-19 12:52:01.768 23667-23737/com.example.loosecarrot.whogotmessage I/System.out: ** END NESTED EXCEPTION **

対応方法

対応方法は調査済みです。

そのうち備忘録として投稿していきたいと思います。

2018/09/15追記
以下でDB(MySQL)へ登録できる方法を記載しているので見てみて下さい。
android MySql接続 非同期処理(MySqlローカル接続エラー原因調査 2)

おすすめのプログラミングスクール めざせ就職・年収アップ! プログラミングを独学でされている人は意外と多いです。 ただ、プログラミングの独学は簡単にはいきません。 自分だけの力...
プログラミング初心者の独学方法 文系卒の経験談 私はIT系の会社に勤めて4年目ですが、最初の1年は開発をさせてもらえませんでした。 文系卒でプログラミング経験はなかったの...
プログラミングの独学とはエラーとの闘い プログラミングを勉強し始めた初心者の方はつまづくことが多いと思います。 私も最初はエラーが出るたびにいちいちビビッて、意味...
・Java, Servlet: No suitable driver found for “~” の原因と解決法
https://yukun.info/java-no-suitable-driver-found/・ubuntuにmysqlのDBを作ってそれにandroidからアクセス
http://kokawa2003.blogspot.jp/2014/08/ubuntumysqldbandroid.html
ABOUT ME
LooseCarrot
LooseCarrot
ブログ運営をしているLooseCarrotです。 興味のあることにトライして発信していきます! プロフィール

関連している記事