Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

BERGABUNG dengan kondisi dalam permintaan HQL?

Yang sesuai adalah HQL

  select header.advmagencymaster.mamaid,
         header.advmagencymaster.mamaname,header.trohiono 
         from ADVRoheader header 

Tetapi Di HQL lebih baik untuk mengambil seluruh objek sehingga kita dapat menggunakan properti lain juga

   from ADVRoheader header 
   inner join 
   header.advmagencymaster master

HQL tidak tergantung pada database yang mendasarinya. Ini akan sama untuk semua database (Oracle, MySQL, SQL server dll). hanya Kita perlu mengubah koneksi Database di file konfigurasi utama.

Kelas model Anda akan terlihat seperti ini

class ADVMAgencyMaster{
  private String mamaid;
 private String mamaname;  //getters and setters
}

class ADVRoheader{
 private String trohiono;
 private ADVMAgencyMaster advmagencymaster;     // Reference to the ADVMAgencyMaster
 //getters and setters}

Anda Sudah mendefinisikan banyak ke satu relasi di xml

 <many-to-one name="advmagencymaster" class="com.adv.hibernatebean.ADVMAgencyMaster" fetch="select"> <column name="TROHAMAID" /></many-to-one>

Jadi saat Memuat objek ADVRoheader hibernate akan memuat referensi objek dalam "advmagencymaster" juga.

untuk ini, Anda perlu menentukan lazy="false" alih-alih fetch="select".

lazy="true" - lazy loading hanya akan memuat objek induk

lazy-"false" - bersemangat memuat itu akan memuat objek anak (dalam) juga dengan objek induk.

tambahkan kedua file hbm.xml ke file konfigurasi utama (hibernate.cfg.xml) sebagai berikut

 <mapping resource="com/ADVRoheader.hbm.xml"></mapping>
 <mapping resource="com/ADVRomaster.hbm.xml"></mapping> 

tepat sebelum tag penutup pabrik sesi di sini pemetaan terjadi dengan Database.

Biasanya untuk elemen generator kita perlu menggunakan tipe integer dan membuat perubahan di database juga.

Pemfilteran ekstra, kita dapat menambahkan klausa 'di mana' setelah kueri utama. Di sini hanya kondisi bergabung yang diperlukan dan sudah ditangani oleh hibernasi.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara memecahkan masalah kinerja dengan pernyataan Oracle SQL?

  2. Prosedur tersimpan SQL untuk memeriksa nilai ya/tidak dalam tabel dan menjalankan sql

  3. Bagaimana memahami statistik file jejak di Oracle. Seperti CPU, waktu yang telah berlalu, kueri...dll

  4. Karyawan duplikasi dalam tabel karena beralih di departemen

  5. Oracle SQL Syntax - Periksa beberapa kolom untuk IS NOT NULL