我看到這樣的代碼:檢查存在ExecuteScalar結果的最有效方法是什麼?
object objvalid = cmd.ExecuteScalar();
//made it this far - must not have thrown an exception
retVal = true;
...但我想其中的一個可能會更好:
object objvalid = cmd.ExecuteScalar();
retVal = (null != objvalid);
...
Int32 anybodyThere = (Int32) cmd.ExecuteScalar();
retVal = anybodyThere > 0;
首先定義'檢查存在'的ExecuteScalar。你在用什麼sql,你選擇了哪個值?你想檢查什麼?它返回一個數值(例如來自'COUNT'),你想知道它是否大於零,只需檢查它。那麼最後一種方法很好。如果它可以返回'null',則第二種方法更合適。 – 2013-03-12 23:13:36
我的意思是,它會返回一個值嗎?此代碼來自「IsValidField()」方法,該方法具有此SQL:string.Format(「SELECT {0} FROM {1}」,fieldName,tableName); – 2013-03-12 23:14:49
@ClayShannon所以你想有效地檢查一個表是否存在一列? – 2013-03-12 23:21:55