今回は前回作成した画面に機能の実装を行っていきたいと思います。
メッセージをランダムのユーザーに送るという内容です。
※「ランダムのユーザーに」という機能はまず置いておきます。
必要最低限のことだけができれば、他の機能については後からできるので…
単純にメッセージがDBへ登録できるかだけを試してみたいと思います。
・開発環境について
※DBはMySQLを使っています。
インストール方法等は割愛します。
このあたりを参考にしてました。
MySQLインストール
http://www.dbonline.jp/mysqlinstall/
MySQL Workbench5.2.37のインストールと日本語化
http://youforce.hatenablog.com/entry/20120206/1328543498
ソースについて
MySQLのDBへ登録するクエリを以下のように記述してみました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
@Override public void onClick(View v) { //メール本文取得 String message = ((EditText)findViewById(R.id.editTextMsg)).getText().toString(); //メール送信用SQL文取得 strQuery = "INSERT INTO `wgm`.`d_mail_box` " + "(`DMB_MESSAGE_SEQ`," + " `DMB_MESSAG`," + " `DMB_SENDER_USER_CD`, " + " `DMB_RECEIVER_USER_CD`," + " `DMB_DELETE_FLG`) " + "VALUES " + "('2'," + "'" + message + "',"+ "'1',"+ "'1',"+ "'0');"; //メール送信処理(メールをDBへ登録する処理) try { sqlUtil.executeUpdate(strQuery); } catch (Exception e) { //エラー処理 AlertDialog.Builder builder = new AlertDialog.Builder(v.getContext()); builder.setMessage(e.toString()); builder.show(); return; } } |
sqlUtilの中身はこんな感じです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
public void executeUpdate(String strQuery) throws Exception { //コネクション初期化 Connection conn = null; try { //DB接続 conn = DriverManager.getConnection(url, user, password); Statement stmt = conn.createStatement(); //クエリセット stmt.executeUpdate(strQuery); } catch (SQLException e) { throw e; } } |
■実行前
DBは空です。
それでは、いざメッセージ送信!
何かExceptionがキャッチされました…
エラーは「SQLException: No suitable driver」
「ドライバーがない」みたいなメッセージですね。
何かドライバーを取得しないといけないみたいです…
原因を調べて登録できるようにしてみます。
原因がわかれば投稿していきたいと思います。
もっとこんなやり方をすれば良いのでは?という意見があれば
どなたからでも頂けると嬉しいです。
おすすめのプログラミングスクール めざせ就職・年収アップ!
プログラミングを独学でされている人は意外と多いです。
ただ、プログラミングの独学は簡単にはいきません。
自分だけの力...
プログラミング初心者の独学方法 文系卒の経験談
私はIT系の会社に勤めて4年目ですが、最初の1年は開発をさせてもらえませんでした。
文系卒でプログラミング経験はなかったの...
プログラミングの独学とはエラーとの闘い
プログラミングを勉強し始めた初心者の方はつまづくことが多いと思います。
私も最初はエラーが出るたびにいちいちビビッて、意味...
2018/09/13追記
以下で原因調査して対応ができたので、確認してみてください。
android MySql接続 SQLException: No suitable driver 対応方法!
・AndroidアプリのJDBCを使ったデータベースプロ…(Yahoo知恵袋)http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12149810672