public static DataTable GetBatches(long storeID, long? ProfileID)
{
string query =
"SELECT .... where " + (ProfileID.HasValue ? "PROFILE_ID=" + ProfileID.Value : "STORE_ID=" + storeID);
我想改变这种状况查询接受这样的参数化值:发送空值与参数化查询
List<SqlParameter> params_list = new List<SqlParameter>();
SqlParameter param_ProfileID = new SqlParameter("@PROFILE_ID", ProfileID);
param_StoreID.SourceColumn = "PROFILE_ID";
param_StoreID.DbType = DbType.Int64;
params_list.Add(param_ProfileID);
但如果Profile_id
为空呢?我怎么能做到这一点
您是否想要检索PROFILE_ID中具有NULL值的行以及具有相关ID的行,或者是否希望能够为参数提供NULL值并在此情况下检索所有行或仅检索那些有Profile_Id = NULL的人? – Markus
如果我理解正确,你的第一个例子,如果ProfileID为空,你将WHERE条件改为使用STORE_ID,因此你不再使用字段PROFILE_ID,也不需要为它建立一个参数 – Steve