Querydsl: Mencoba menulis beberapa kali ke ..., harap periksa konfigurasi Anda

Dibuat pada 30 Jul 2018  ·  4Komentar  ·  Sumber: querydsl/querydsl

Dengan versi 4.2.1 saya mendapatkan kesalahan

https://github.com/querydsl/querydsl/blob/8f96f416270d0353f90a6551547906f3c217833a/querydsl-sql-codegen/src/main/Java/com/querydsl/sql/codegen/MetaDataExporter.java#L430

saat menggunakan querydsl-maven-plugin bersama dengan jdbcDriver com.mysql.cj.jdbc.Driver (mysql-connector-java 8.0.11). Ini terjadi karena pengguna yang saya gunakan untuk terhubung ke MySQL memiliki akses ke beberapa database. Sebagai solusinya saya harus menambahkan nullCatalogMeansCurrent=true ke jdbcUrl .

Semua 4 komentar

Apakah Anda mengonfigurasi paket terpisah untuk beberapa skema?
Atau apakah Anda memfilter skema dengan pola?
Bisakah Anda melukis gambarnya sedikit lagi, karena itu dimaksudkan untuk gagal ketika plugin maven mendeteksi kelas sudah dibuat.

Saya memfilter tabel melalui tableNamePattern, dan mencoba memfilter melalui schemaPattern, tetapi ini tidak berpengaruh. (skema selalu nol, katalog berbeda tergantung pada nama database).

Sunting1: db terlihat seperti ini:

db1:
db1.Users
db2:
db2.Orders

https://github.com/querydsl/querydsl/blob/8f96f416270d0353f90a6551547906f3c217833a/querydsl-sql-codegen/src/main/Java/com/querydsl/sql/codegen/MetaDataExporter.java#L257

mengembalikan dua item yang terlihat seperti ini di MetaDataExporter::handleTable (pseudo json):

{catalog: db1, schema: null, tableName: Users}
{catalog: db2, schema: null, tableName: Users}

Sunting2: Saya hanya menggunakan skema db1. db2 tidak digunakan sama sekali oleh aplikasi saya, tetapi pengguna kebetulan memiliki akses ke sana.

Saya memiliki masalah yang sama!

Solusi : Buat pengguna baru di database yang hanya memiliki akses ke database tertentu yang ingin Anda buatkan file Q-nya. Selesai.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat