2011-04-30 46 views
0

PreparedStatement接口中setNull()方法的用法是什麼?我看了一下this的帖子。PreparedStatement接口的用法setNull

它說:Without the setNull(..) method there would be no way to set null values for the Java primitives.

然而在JDK5自動裝箱,我認爲空值可以設置甚至原始類型。

還有另一個post在其他一些論壇上說:If you want to be portable to different databases, use the setNull() method.

但是沒有什麼用Java文檔明確提及。你能幫我理解嗎?

+0

「但是在JDK5中使用自動裝箱功能時,我認爲可以在偶數基本類型上設置空值。」 - 錯了。自動裝箱意味着您可以將原始值分配給對象類型的變量;它不允許您將null傳遞給採用原語的方法。 – 2011-04-30 13:06:09

+0

是的..我錯了。 – Vicky 2011-04-30 15:27:30

回答

1

我認爲如果從數據庫端查看它會更容易理解。如果要在數據庫插入語句中將字段設置爲NULL,則需要告訴數據庫應設置爲NULL而不是列的默認值。如果在數據庫模式中有一個可爲空的整數字段,則可以使用set null將其設置爲DB NULL值,而不是其默認值(0)。

+0

是的,這清除了一些東西。所以,如果你必須設置NULL,使用setNull。 – Vicky 2011-04-30 12:40:06

+0

這就是我理解它的方式。 – DaveH 2011-04-30 15:27:03