0
我在c#中使用下面的代碼,它試圖通過兩個給定的參數過濾數據。但是,它不起作用。你有什麼建議嗎?c#中的SQL參數不工作
感謝, Vancho
下面是代碼
public void TestQuery()
{
SqlCommand sqlCommand = new SqlCommand(GetQuery());
//sqlCommand.Parameters.Add("@SKU", SqlDbType.VarChar).Value = txtSKU.Text;
//sqlCommand.Parameters.Add("@ProductName", SqlDbType.NVarChar).Value = txtProductName.Text;
sqlCommand.Parameters.AddWithValue("@SKU", txtSKU.Text);
sqlCommand.Parameters.AddWithValue("@ProWductName", txtProductName.Text);
//sqlCommand.Parameters.Add("@SKU", System.Data.SqlDbType.NVarChar).Value = txtSKU.Text;
//sqlCommand.Parameters.Add("@ProductName", System.Data.SqlDbType.NVarChar).Value = txtProductName.Text;
//sqlCommand.Parameters["@SKU"].Value = txtSKU.Text;
//sqlCommand.Parameters["@ProductName"].Value = txtProductName.Text;
//execute query and other stuff
conn.Open();
SqlDataAdapter da = new SqlDataAdapter(GetQuery(), conn);
DataTable dt = new DataTable();
da.Fill(dt);
dt.TableName = "Product Setup";
dataGridView1.DataSource = dt;
conn.Close();
}
private string GetQuery()
{
System.Text.StringBuilder sb =
new System.Text.StringBuilder(@"SELECT ProductID, BarCode, SKU, ProductName, SecondaryIDNumber, ModelIDNumber, ProductDescription
FROM Products WHERE ProductId is not null ");
if (txtSKU.Text != null)
sb.Append("AND SKU = @SKU ");
if (txtProductName.Text != null)
sb.Append("AND ProductName = @ProductName");
return sb.ToString();
}
_not working_意味着前通過該查詢
DataAdapter
你也可以檢查你的參數? –
您創建了sqlCommand,但沒有將它傳遞給適配器。 –