0
我有一個包含多個連接的sql語句;有時候會有記錄來自聯接,有時候不會。聯接爲空時不是錯誤。確定JOIN是否導致任何列
有沒有辦法來測試一個特定的連接是否爲空,而不必捕捉在結果集中找不到結果列時發生的異常?
換句話說,如果使用JDBC,我執行下面的SQL語句:
select * from AA left outer join BB on AA.keyField = BB.keyField
where keyField = "123"
我想知道這是否聯接找到的任何領域,而不必捕獲異常。如果我然後執行java語句:
String valueString = rs.getString("BB.keyField");
我得到一個異常。我無法將rs.getString(「BB.keyField」)與null比較,因爲getString在連接中未找到任何值時會引發異常。
我希望這可以讓問題更清楚,並且我很抱歉沒有在第一個地方擴展它。
你正在使用SELECT查詢或CREATE/UPDATE/DELETE操作嗎?如果一個JOIN產生一個空集並導致一個異常,你可能必須在調用任何基於寫的操作之前檢查結果。 –
對不起,應該說 - 我從一個或多個表中選擇值,其中一些會有一些,有些則不會。 – arcy
我不認爲你可以避免不檢查個別列值NULL。 –