我看到这样的代码:检查存在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