Ustalenie linii błędu w zapytaniu SQL

0

Cześć
Mam pewien problem. Mam napisane natywne zapytanie SQL w jednej z klas Javy. Przy próbie odpalenia tego zapytania dostaje jedynie lakoniczny wyjątek SQL, że niepoprawny parametr mam. Zapytanie jest mega długie i ten parametr powtarza się np. 15 razy.
Przechodząc do sedna jest jakaś opcja, w której linii następuje ten problem z niepoprawnym parametrem, poprzez jakiś debugger czy coś w ten deseń?

0

Użyj profilera SQL, a zobaczysz dokładnie jakie zapytanie generuje aplikacja. Wklejasz to zapytanie do jakiegoś mądrego IDE i masz dokładnie na tacy w czym problem. Pod warunkiem, że problem dotyczy stricte zapytania SQL.

A gdybyś jeszcze napisał coś więcej (jak się łączysz do bazy i co to za baza danych) to już w ogóle by było fajnie...

0

Dzięki za odpowiedź. Baza danych to Oracle, natomiast łącze się za pomocą Hibernate (Entity Manager)

0

Możesz te 15 wystąpień parametru zamienić na 1 za pomocą faktoryzacji zapytania...

with foo (select ? moj_parametr from dual)
select a.*,b.* from tab a, xyz b, foo f where a.id=f.moj_parameter and b.id=f.moj_parametr....

W Hibernate skonfigurować tak by logowało szczegóły (zapytanie + parametry). Szybkie google: "hibernate log sql with parameter values"

1 użytkowników online, w tym zalogowanych: 0, gości: 1