我需要将一堆字符串查询插入语句转换为参数化查询。
有些字段有条件,即
string ActualNumStudents;
if (txtActualNumStudents.Text == "")
ActualNumStudents = "0";
else
ActualNumStudents = txtActualNumStudents.Text;
我可以使用字符串ActualNumStudents而不是txtActualNumStudents.Text吗?我发现了类似的问题,但不是这种情况。
cmd.Parameters.AddWithValue("@ActualNumStudents", txtActualNumStudents.Text);
答案 0 :(得分:0)
基本上你可以使用
cmd.Parameters.AddWithValue("@ActualNumStudents", txtActualNumStudents.Text == "" ? "0" : txtActualNumStudents.Text);
答案 1 :(得分:0)
您可以执行in-line if语句:
cmd.Parameters.AddWithValue("@ActualNumStudents", txtActualNumStudents.Text == "" ? "0" : txtActualNumStudents.Text);
答案 2 :(得分:0)
是的,你可以,只要它是正确的类型,如果它在变量/控制中或通过“somedata”直接无关紧要
答案 3 :(得分:0)
在准确答案之前,你需要告诉你sp中的ActualNumStudents的类型是什么? 如果它是一个数字,那么你可以在这里做许多人建议的内联版本,如果是任何类型的字符串(char,varchar,nchar,nvarchar,...),那么你还需要知道什么在空条目中传递(最可能是数字......)