問題タブ [testcontainers-junit5]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
41 参照

java - Jooq ネイティブ クエリは接続情報を使用しません

統合テスト内で dslContext を構成しました

そして挿入を書きました:

これはかなりうまく機能します。全く問題無い。

したがって、大量のデータを追加する必要があるため、コードベースにあまりデータを追加したくありません。そこで、挿入をファイルに移動し、テスト内で読み取りました。

DBeaver によって生成された挿入ステートメントをファイルにコピー ペーストし、あとは jooq に任せることができるので、これは私にとって非常に便利です。SQL ファイルの内容は次のとおりです。

しかし!suceessfull で実行された dslContext.insertInto.. コマンドから明確にわかるように、dslContext が適切に構成されているため、接続の問題がスローされますが、その理由はわかりません。エラー:

原因: org.mariadb.jdbc.internal.util.exceptions.MariaDbSqlException: org.mariadb.jdbc.internal.util.exceptions.MariaDbSqlException のテーブル 'ATTACHMENT' に対するユーザー 'test'@'172.17.0.1' に対する INSERT コマンドが拒否されました.of(MariaDbSqlException.java:34) org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.exceptionWithQuery(AbstractQueryProtocol.java:194) で org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.exceptionWithQuery(AbstractQueryProtocol.java:177) ) org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.executeQuery(AbstractQueryProtocol.java:321) で org.mariadb.jdbc.ClientSidePreparedStatement.executeInternal(ClientSidePreparedStatement.java:220) ... 72 以上 原因: java.sql .SQLException: org.mariadb.jdbc のテーブル 'ATTACHMENT' のユーザー 'test'@'172.17.0.1' に対する INSERT コマンドが拒否されました。internal.protocol.AbstractQueryProtocol.readErrorPacket(AbstractQueryProtocol.java:1694) at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.readPacket(AbstractQueryProtocol.java:1556) at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.getResult( AbstractQueryProtocol.java:1519) at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.executeQuery(AbstractQueryProtocol.java:318) ... 73 詳細

dslContext に .query() 用の個別の構成があるのはなぜですか? それとも私は何かを誤解していますか?ご意見ありがとうございます。

0 投票する
0 に答える
57 参照

mysql - Spring Boot でテストするときに、特定のコメントが原因で init.sql ファイルが mysql テスト コンテナーで失敗するのはなぜですか?

https://dev.mysql.com/doc/refman/5.7/en/comments.htmlによると、mysql 5.7 で完全に有効な # を含むコメントは、mysql docker テスト コンテナーの init ファイルを壊しているようです。application-test.properties ファイルでデータソースを次のように初期化すると:

コメントが次のように構成されている場合、test-init.sql ファイル内のこのようなコメントにより、mysql はファイルの残りを無視します。

ただし、コメントが次のような場合:

ファイルの残りの部分は正常に実行されます。

また、テスト コンテナーは mysql エラーをスローしません。代わりに、アプリケーション コードでテーブルを参照しようとすると、テーブルが存在しないと通知されます。

また、正確な mysql 構文をサポートするために、H2 の代わりにテスト コンテナーを使用しています。これを修正する方法についてのヒントはありますか?通常、sequel pro のエクスポートを使用して、既存のデータベースからスキーマをエクスポートします。