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

Kapan SQL yang benar akan menghasilkan hasil yang salah?

Satu hal yang dapat Anda lakukan adalah menerapkan petunjuk NO_QUERY_TRANSFORMATION yang diperkenalkan di Oracle 10g.

Jika ini memberikan hasil yang diinginkan, Anda tahu bahwa Anda menghadapi bug Oracle, karena tidak ada petunjuk yang akan mengubah hasil kueri yang sebenarnya.

Pada saat yang sama Anda mungkin telah memecahkan masalah Anda kecuali bahwa mungkin rencana eksekusi Anda tidak akan memuaskan.

Bug yang Anda hadapi (saya tidak tahu apakah itu bug yang diketahui) adalah bahwa pengoptimal Oracle mungkin tidak menafsirkan maksud kueri asli dengan benar saat mengubah kueri untuk rencana eksekusi yang lebih baik (menggabungkan tampilan, dll.). Dengan menggunakan petunjuk, Anda menginstruksikan pengoptimal untuk tidak melakukannya.

Fenomena ini paling sering terlihat dengan kueri kompleks yang melibatkan tampilan kinerja sebaris.

Saat ini saya tidak memiliki contoh kode untuk mereproduksi masalah ini, tetapi saya sedang mengerjakannya.

UPDATE:Tampaknya ini sebenarnya maksud dari petunjuk itu - saya menemukan ini:

doumentasi .




  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 menghubungkan ke koneksi database Oracle dari .Net Core

  2. Bagaimana cara mendapatkan konten tekstual dari BLOB di Oracle SQL

  3. Apa yang harus saya instal untuk menggunakan OraOLEDB

  4. Koneksi ke Oracle bekerja melalui aplikasi konsol dan tidak bekerja melalui layanan web

  5. Menghubungkan ke OracleDB melalui aplikasi Android