すべてを読んでも、SqlDataAdapaterで動作するようにパラメータを取得できません。誰かが私の問題点を教えてくれれば、それは大いに感謝するだろう。 Parameters.Addを使用しようとしました。なぜなら、これはより良い方法ですが、あきらめて、SqlCommandを無駄に使うことを試みたからです。C#DataAdapterパラメータエラー
private void Run_BTN_Click(object sender, EventArgs e)
{
var select = "select C.LSTNAME from C " +
"inner join bd ON bd.id = C.id " +
"@nameParam";
var c = new SqlConnection(CnnString.CnnVal("DB2"));
SqlCommand command = new SqlCommand(select, c);
var dataAdapter = new SqlDataAdapter(command);
command.Parameters.AddWithValue("@nameParam", "where C.LSTNAME = " + Cust_TB.Text);
/* dataAdapter.SelectCommand.Parameters.Add(new SqlParameter
{
ParameterName = "@nameParam",
Value = "where C.LSTNAME = " + Cust_TB.Text,
SqlDbType = SqlDbType.NVarChar,
Size = 2000 // Assuming a 2000 char size of the field annotation (-1 for MAX)
}); */
var ds = new DataSet();
try
{
dataAdapter.Fill(ds);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
Reporting_DGV.ReadOnly = true;
Reporting_DGV.DataSource = ds;
}
すべきですか? – SLaks
WHEREをパラメータ値の一部にすることはできません。 – Steve
@Steve Okは感謝を知らなかった –