0
我對這個代碼獲得一個空指針獲得一個NullPointerException在我的代碼
cmd.CommandText = query;
我傳遞正確的參數。我的更新聲明有什麼問題,我不知道?
(我知道的代碼應該是在嘗試捕捉,但它是故意的,現在,所以不要看那個)
感謝
我對這個代碼獲得一個空指針獲得一個NullPointerException在我的代碼
cmd.CommandText = query;
我傳遞正確的參數。我的更新聲明有什麼問題,我不知道?
(我知道的代碼應該是在嘗試捕捉,但它是故意的,現在,所以不要看那個)
感謝
異常的直接原因是,你避風港沒有分配cmd
的值。 的implementtation也能像那
public void InsertImportantMsg (string msg, DateTime toDay, int visible) {
connection.Open();
// Put IDisposable into using...
using (var cmd = connection.CreateCommand()) {
// Format query to be readble
cmd.CommandText =
@"UPDATE IMPORTANTMESSAGE
SET MESSAGES = :msg, -- <- you don't need apostrophes here...
DATETIME = :toDay,
LABELVISIBILITY = :visible";
cmd.Parameters.Add(":msg", msg);
cmd.Parameters.Add(":toDay", toDay);
//TODO: Check this - Oracle doesn't support boolean is SQL
cmd.Parameters.Add(":visible", visible);
cmd.ExecuteNonQuery();
}
}
是的,我知道Oracle不支持布爾(不幸),但注意可見不是一個布爾值,而是一個int:D – States 2014-10-28 11:46:03
可能重複[什麼是一個NullReferenceException,如何解決呢?(http://stackoverflow.com/questions/4660142/what-is-a-nullreferenceexception-和我如何修復它) – Dirk 2014-10-28 11:36:34
你是否缺少:cmd = connection.CreateCommand();上面的線? – 2014-10-28 11:36:56
你真的*得到一個'NullpointerException'嗎?或者你得到一個'NullReferenceException'? – 2014-10-28 11:38:10