0
我的代碼從數據庫中成功讀取字符串值,但是當我要導入一個整數值,它把它讀成空值(即使數據庫已分配給該字段值)是否可以使用Oledb從數據庫檢索整數值?
我的代碼:
query = "SELECT * FROM Enemies";
da = new OleDbDataAdapter(query, conn);
da.Fill(dt); // dt = DataTable
wea = new Weapon(Convert.ToString(dt.Rows[randomItem][1])); // Works perfect for only string value retrieval
// randomItem = Randomly chooses a row from the database to use for object construction
如果我使用以下代碼,則會收到「InvalidCastExcpetion was unhandled」異常。很多「對象不能從DBNull轉換到其他類型的」
wea = new Weapon(Convert.ToInt32(dt.Rows[randomItem][2])) // The 2 gets the damage column from the database
的「損害」列確實是一個整數值?不是數值? – marcoaoteixeira 2013-02-22 14:06:31
如果列值爲NULL,您希望在它的位置使用什麼值? – 2013-02-22 14:06:58
你是否檢查所有列是否正確彈出?檢查你是否在損害列中獲得值? – 2013-02-22 14:07:52