ExecuteScalar


ExecuteScalar運行查詢,並返回查詢所返回的結果集中第一行的第一列或空引用(假設結果集為空).忽略其它列或行.

使用 ExecuteScalar 方法從數據庫中檢索單個值。

由於不用創建行集、查找值並關閉行集,所以產生的系統開銷很小與使用 ExecuteReader方法,然后使用 SqlDataReader 返回的數據運行生成單個值所需的操作相比,此操作須要的代碼較少

cmd.CommandText = "SELECT COUNT(*) FROM dbo.region";

Int32 count = (Int32) cmd.ExecuteScalar();//一般用來獲取一個聚合值 如SUM(). COUNT()

[說明]:我們平時Select 時候可能會碰上這樣的情況,即所求的數據集為空或不存在兩種情況 數據集為空即值為NULL,

可是它的行數為1 代碼不加以推斷的話會出現“指定的轉換無效”的ERROR

 

 解決方式--〉 object obj = comm.ExecuteScalar(); //返回類型為object

if (obj == System.DBNull.Value) //推斷是否是空值

MessageBox.Show("Result Is Null 數據集的行數為一");

數據集不存在即行數為零 直接使用 Int32 count = (Int32) cmd.ExecuteScalar() 會出現“未將對象引用設置到 對象的實例”的ERROR

 

解決方式--> object obj = comm.ExecuteScalar(); if (obj == null ) MessageBox.Show("數據集的行數為零");


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM