【JavaDB6】超重要!JDBCプログラミングの基本を初心者向けに解説

Поделиться
HTML-код
  • Опубликовано: 1 дек 2024

Комментарии • 39

  • @taroomori152
    @taroomori152 Год назад +7

    いつも拝見しております。
    質問ですが
    eclipseでは今回の動画のようにできないのでしょうか?
    動画の通りMySQLはダウンロード済みです。
    一応メインクラスでプログラミングは作成済みです。
    コンソールではエラーになりました。
    ネットでいろいろ調べましたがどれが正解かわかりません。
    よろしくお願い申し上げます。

    • @SekaChan
      @SekaChan  Год назад +7

      Taro Omoriさん、コメントありがとうございました。
      Eclipseなどの統合開発環境を使ってJDBCのプログラムを動かす場合は、各ツールに合わせて別途設定が必要なケースがあります。
      Eclipseではプロジェクトに参照ライブラリにJDBCドライバのJARファイルを追加する必要があります。
      取り急ぎ、こちらの記事に画像キャプチャ付きの詳しい説明があったので参考にしてみてください → style.potepan.com/articles/26613.html
      (僕の環境ではこちらの方法で正しく動作することを確認しました)
      きっとツールによって(バージョンによっても?)方法が異なるので、改めて現状を調査して動画にまとめるか、今ある動画内に詳細を加えるかを検討したいと考えています。
      ※他にも同じことで困っている方がいるかもしれないので、このコメントをトップに固定させていただきました

    • @taroomori152
      @taroomori152 Год назад +3

      @@SekaChan さん
      返信ありがとうございます。
      何とかできました。
      EclipseでJavaパッケージ上で右クリックしましたが画面通りにならず焦りました。プロパティから開いてライブラリーのモジュールパスにJDBCドライバーを追加したら何とかできました。
      cmdで追加確認できました。
      画面通りにならないと焦りますね。

  • @だしほん-k2i
    @だしほん-k2i 18 дней назад +1

    この部分参考書で読んだんですが、こうやって動画で解説を見るとかなりクリアに理解することができました☺️

  • @techitechi003
    @techitechi003 Год назад +3

    タイトル通り超超重要な内容でした!!
    個人で調べたり、他の方の動画で動作の方法が分かっていたとしても、根本的にここまでスッと理解が出来るコンテンツは無いと思います!
    菅原さんの動画は、本当に短時間で根本から理解が出来るので毎回助かっております!
    もっともっと多くの方に広まって欲しいです✨
    いつもありがとうございます!

    • @SekaChan
      @SekaChan  Год назад +2

      茶トラ猫 てち三郎さん、THANKSコメントありがとうございました!
      そうなんです。この動画(特にホワイトボード左側の図)は超超重要な内容ですね!
      リアルのセミナーでも、今回の図に修正を加えながらこの先の解説を進めていくことが多いです。
      この講座も同じようなスタイルで進めているので、この先の動画も楽しみにしててください!
      もっと多くの人たちの力になれるように、これからも頑張ります💪

  • @こひなた-k9e
    @こひなた-k9e Год назад +3

    16:02
    上記の説明に関して質問です。
    コンパイル後、java InsertStudentを実行したところ、
    「エラー:メイン・クラスInsertStudentが見つからなかったかロードできませんでした」
    上記のようなエラー文が発生してしまいました。
    以前、エクリプスとJavaをインストールしているのが原因かと思い、すでに追加してあった環境変数 JAVAHOME
    を削除しましたが、エラー文に変化が見られませんでした。
    echo %CLASSPATH%
    で確認したところ、
    → .;C:\Users\USER\OneDrive\デスクトップ\JAVA_練習\JDBC\mysql-connector-j-8.0.32.jar;
    そのほかに確認すべきところはありますでしょうか?
    ご教示いただけたら幸いです。

    • @こひなた-k9e
      @こひなた-k9e Год назад +3

      クラスが作成されていなかったので、コンパイルがうまくいっていないようです。

    • @SekaChan
      @SekaChan  Год назад +4

      ひなた コさん、コメント&追記ありがとうございました。
      コンパイルがうまくいっていないということは、コンパイル時にエラーが出ていると思うので、エラーメッセージに従って間違いを直す必要がありますね😄
      もしかしたら、プログラム内のクラス名が間違えているのかもしれません。
      (前のプログラムをコピペして作ったけど、クラス名を変え忘れて前のクラスファイルに上書きされてしまっている)
      環境変数CLASSPATHは問題ないと思います。

  • @9igon93
    @9igon93 Год назад +4

    ありがとうございます。また次を楽しみにしています。

    • @SekaChan
      @SekaChan  Год назад +2

      9 igonさん、コメントありがとうございました!
      次回は検索系(SELECT)の処理を解説します。
      ここまでいけば作れるプログラムの幅がかなり広がるので、ぜひ楽しみにしていてください✨

  • @いくみん-j7e
    @いくみん-j7e Год назад +3

    とても分かりやすい動画をありがとうございます!😊
    質問があります!
    ①ConnectionやStatementはインターフェースなのでしょうか?クラスなのでしょうか?
    ②Java標準apiドキュメントにはインターフェースと書いてあります、、
    もし、インターフェースなら、
    なぜオブジェクトを生成できるのでしょうか?
    大変忙しいとは、思いますが、返信いただけたら嬉しいです!

    • @SekaChan
      @SekaChan  Год назад +3

      いくみんさん、コメントありがとうございました!
      APIドキュメントで見てもらった通り、ConnectionやStatementは両方ともインタフェースですよ😄
      内部的にはこれらのインタフェースを実装したクラスのオブジェクトが生成されていて、それらがconやstmtに代入されています。

    • @いくみん-j7e
      @いくみん-j7e Год назад +3

      @@SekaChan ご返信ありがとうございます!
      つまり、
      Connection con = new Connection();
      のとき、内部では、インターフェースを実装したクラスのインスタンスconが生成されてるという認識であってますか?
      よろしくお願いします!

  • @m_corma
    @m_corma 7 месяцев назад

    いつも解り易くて助かります。ありがとうございます。
    1回目に実行したと気にMySQLに繋がらいみたいなエラーが出たのでMySQLを再インストールしたら正常に実行できました。
    が、サービスの MySQL80 が削除できず MySQL81 を作成したのですが、このサービスの MySQL80を消す方法ってわかりますでしょうか?
    直接JAVAと関係なくて申し訳ありません。

  • @kinopee2024
    @kinopee2024 Год назад +2

    SQLException を catch する分岐を加えるとどうなりますでしょうか?

    • @SekaChan
      @SekaChan  Год назад +3

      Peeさん、コメントありがとうございました。
      SQLExceptionに対するtry-catchを記述すると、SQL文を正常に実行できないケースに対する処理文を書くことができますね👍

    • @kinopee2024
      @kinopee2024 Год назад +1

      @@SekaChan 勉強を進めていて、finallyブロックでcloseメソッドを呼び出すよりもtry-with-resourcesな書き方の方がモダンな気はしますが、限らられた時間で説明するための選択でしょうか?

  • @さんかめはめ
    @さんかめはめ Год назад +3

    ありがとうございます!
    mysqlインストール時にpython connectorのみfailedのままダウンロードを済ませてしまいましたが調べてみても理由は分かりませんでした😅
    今のところ普通にsqlは動いてるので大丈夫なのかなと思いますが笑

    • @SekaChan
      @SekaChan  Год назад +2

      さんかめはめさん、コメントありがとうございました!
      failedの内容からすると、おそらくpython関連の機能に何か支障が出てしまう可能性がありますね。
      JavaからMySQLに接続してSQL文を実行できれば、取り急ぎこの講座はこのまま進めてもらえるのかなという気がします😄

    • @さんかめはめ
      @さんかめはめ Год назад +3

      @@SekaChan ありがとうございます!
      先生の講座を受けれさえすれば全然問題ないので良かったです笑

  • @SHOHEI.
    @SHOHEI. Год назад +2

    質問ですが、コンパイル後java InsertStudentで実行したところ、
    エラー: メイン・クラスInsertStudentを検出およびロードできませんでした
    原因: java.lang.ClassNotFoundException: InsertStudent
    と表示されました。
    CLASSPATHの環境変数の設定・ユーザー名・PASS確認をして何度か試しましたが、上記と同じ表示がされました。
    ClassNotFoundExceptionが出た場合どこを確認すれば良いのか教えていただいてもよろしいでしょうか?

    • @SekaChan
      @SekaChan  Год назад +3

      K11S6さん、コメントありがとうございました。
      エラーメッセージの内容からInsertStudentクラスを見つけられていないようなので、
      1.javaコマンドを実行する際のカレントディレクトリ
      2.環境変数CLASSPATH
      のどちらかに原因がある気がします。
      まず、コマンドプロンプトにおいてInsertStudentクラスのclassファイルがあるフォルダ上でjavaコマンドを実行していることを確認してください。
      (もしパッケージ化している場合はパッケージフォルダがあるフォルダ上)
      また、CLASSPATHに「.」が入っているかも確認してみましょう。
      これはjavaコマンド実行時に、カレントディレクトリのクラスファイルを見にいくための設定です。
      新しくJDBCドライバのパスを設定した場合はこの設定が忘れられやすいので注意が必要ですね🍀
      (こちらの動画も参考にしてください→ ruclips.net/video/-k71tPvKSgI/видео.html )

    • @SHOHEI.
      @SHOHEI. Год назад +3

      ​@@SekaChan
      ご回答ありがとうございます。
      確認したところ環境変数CLASSPATHの設定に問題があったみたいです。
      ちなみにCLASSPATHがなかったので新規で設定しました。
      「.」を入れる場所ですが、オブジェクト名の前でよろしいでしょうか?
      個人的に調べたところ .;オブジェクト名; と記載されていたのでそのように設定しましたが結果は変わりませんでした。
      いろいろ試して実行してる際ですが、コンパイル時誤って
      「java InsertStudent.java」
      で実行したところ「1件更新しました」と表示され、データベースを確認すると問題なく追加されてました。追加されていれば問題ないのでしょうか?

    • @SekaChan
      @SekaChan  Год назад +2

      @@SHOHEI. さん、返信ありがとうございました!
      プログラムを実行できてデータベースに情報が追加されていたのなら問題ないと思いますよ👍

    • @SHOHEI.
      @SHOHEI. Год назад +2

      @@SekaChan
      返信ありがとうございます。
      問題なく安心しました、確認ありがとうございます!

  • @kabi_fusen
    @kabi_fusen 6 месяцев назад +1

    👏

  • @横山貴士-q7r
    @横山貴士-q7r Год назад +1

    私もK11S6さんと同じでコンパイル後に java.lang.ClassNotFoundExceptionエラーが出てしまいました。
    現在対処方法を検索していますが対処方法がわかれば連絡をお願いします。

    • @SekaChan
      @SekaChan  Год назад +2

      横山貴士さん、コメントありがとうございました。
      K11S6さんのコメントに返信をしました。
      ただ、同じClassNotFoundExceptionでもどのクラスファイルが見つかっていないのかによって対処方法が変わるので注意してください。

    • @横山貴士-q7r
      @横山貴士-q7r Год назад +3

      返信ありがとうございました。
      環境変数設定を確認して、クラスパスにカレントディレクトリの「.」を追加していなかったことが原因でしたので、無事解決することができました。
      こちらのパソコン環境を伝えてきれていないのにエラーメッセージだけで
      助言していただき大変助かりました。
      これからもよろしくお願いします。