双引号不起作用,因此在直接执行 SQL 语句时,您必须输入“某个值”才能实际进行变量比较。
问题是现在当我从 ASP.NET 代码执行 SQL 语句时,我似乎没有得到任何读数......我什至没有收到错误:S....
我已经尝试自己执行 SQL 语句,它确实有效。
public static string testExi(string localIncidentNum)
{
try
{
string query = "SELECT TOP 1 UniqueColID From DBNAME WHERE LocalIncidentNum = @localIncidentNum ORDER BY [version] DESC";
DataTable dt = new DataTable();
SqlConnection connection = new SqlConnection(connectionStr);
SqlCommand command = new SqlCommand(query, connection);
command.Parameters.AddWithValue("@localIncidentNum", localIncidentNum);
connection.Open();
SqlDataAdapter adp = new SqlDataAdapter(command);
adp.Fill(dt);
connection.Close();
command.Dispose();
connection.Dispose();
if (dt.Rows.Count != 0)
{
string UniqueColID = dt.Rows[0]["UniqueColID"].ToString();
return UniqueColID;
}
else
{
return null;
}
string some = dt.Rows[0]["UniqueColID"].ToString();
return some;
}
catch (Exception err)
{
Global.tmpmsg = " Updating follow up was not successful. " + err.ToString();
return null;
}
}
如果我在 SELECT 语句中硬编码事件值,它可以工作,但如果我在 .addwithvalue 中硬编码事件值,它就不起作用。
command.Parameters.AddWithValue("@localIncidentNum", "12-023696");