MySQLのDATETIME型データ読み取りエラー

MZ Platformとは 掲示板 MZプラットフォームユーザー会掲示板 MySQLのDATETIME型データ読み取りエラー

3 件の投稿を閲覧中 - 1 ~ 3 件(全 3 件)
  • 著者
    投稿
  • #6524
    toshitora
    一般参加者

    Tutorialの「データベースアクセス0.mzax」を使って手持ちのサンプルデータを読み込んだところ、DATETIME型データについて、下記のエラーとなりました(DATETIME型データが読みこまれるはずの列の先頭に表示される)。確認すべき点等ありましたらご教示いただけませんでしょうか。
     ERRO:java.time.LocalDateTime value can not be set to java.util.Date field.
    データベース内のデータは、「2017-09-04 09:00:00」となっていて、きちんとDATETIME型になっており、phpMyAdminでは正常に表示されます。
    MySQLバージョン:5.7.21
    JDBCドライバ:mysql-connector-java-8.0.26.jar
    MZプラットフォーム:3.6_64
    よろしくお願いします。

    #6525
    toshitora
    一般参加者

    MZプラットフォーム側のデータ型は、java.util.Dateのみですので、connector/Jがjava.time.LocalDateTimeで渡そうとしているということで、connector/Jのバージョン互換性ではないかとあたりをつけて、試してみました。
    【結果】connector/J 8.0.22までは問題なく動作しましたが、8.0.23以降は同じエラーがでました。ということで上記が裏付けられました。
    全部は試してませんが、5.2.37、5.1.49、8.0.20、8.0.21、8.2.22は正常に動作することを確認しています。
    以上、共有いたします。
    DATETIMEは必ず使う型ですので、皆様もご注意ください。

    #6526
    MZPlatformユーザー会
    サイト管理者

    ご指摘のように、JDBCドライバによる型変換でjava.time.LocalDateTimeが渡される問題について、こちらでも把握しておりました。

    MySQLのバージョンが5.7であれば、JDBCドライバは5系を使用していただけるとこの問題は生じないと思いますが、調査できていない組み合わせで何か不具合があるかもしれません。その際はお手数ですがお知らせいただけると助かります。

    MySQLのバージョンが8.0であればJDBCドライバは8系をご使用いただき、MySQL8.0用のMZ側修正パッチをご利用ください。最新版のスマート製造ツールキット(MZIoTtoolkit)ZIPファイルをダウンロードして展開しますと、commonフォルダの中に講習資料と必要なファイルが含まれていますので、お試しいただければと思います。

3 件の投稿を閲覧中 - 1 ~ 3 件(全 3 件)
  • このトピックに返信するには、ログインしてください。