1、問題描述:
資料庫查詢成功:oracledatareader reader = command.executereader();
在獲取資料:reader.getdouble(5); 時
返回異常:「system.invalidoperationexception: 沒有資料可用於行或列。」
2、原因分析:
查詢出的資料中,對應列項資料為空,即null,因此getdouble函式丟擲此異常。
3、解決辦法:
將reader.getdouble(5); 改為 reader.isdbnull(5) ? 0 : reader.getdouble(5);
4、總結:
獲取其他型別資料時也有出現同樣異常的可能,因此對資料是否為空的判斷很有必要
Oracle資料庫空值操作
空值操作 null表示空的意思。一 情況 1 表中的任何字段預設情況下都可以為null值。2 not null表示非空,是一種約束 設定為非空約束的字段,必須有有效值,不能為空。3 插入資料時 reg insert into emp ename,empno values 2001,張三 此記錄中,沒...
MFC資料庫操作 獲取資料庫內容
定義 recordsetptr 型變數 hresult hr recordsetptr prentrecordset hr prentrecordset.createinstance uuidof recordset if failed hr 呼叫其 open 方法,開啟乙個資料集 cstring ...
資料庫 資料庫基本操作
操作練習 修改表結構 表資料的操作 實現 1 建立表 create table student stu no char 12 not null primary key,stu name varchar 20 not null gender tinyint 1 default1,age tinyint...