C# c语言中的sql搜索查询#
我正在尝试在我的应用程序中进行数据库搜索,用户将选择列并输入搜索词,结果将出现在dataviewgrid中。 这是我一直在编写的代码,问题是没有出现任何问题,我非常确定数据库中有条目。编辑:这是一个windows窗体应用程序C# c语言中的sql搜索查询#,c#,sql,C#,Sql,我正在尝试在我的应用程序中进行数据库搜索,用户将选择列并输入搜索词,结果将出现在dataviewgrid中。 这是我一直在编写的代码,问题是没有出现任何问题,我非常确定数据库中有条目。编辑:这是一个windows窗体应用程序 private void button1_Click(object sender, EventArgs e) { conn = new SqlConnection("Server = localhost; database = Clients; In
private void button1_Click(object sender, EventArgs e)
{
conn = new SqlConnection("Server = localhost; database = Clients; Integrated Security = SSPI");
conn.Open();
SqlCommand cmd = new SqlCommand("SELECT * From dbo.Tclients WHERE @choice = @input", conn);
cmd.Parameters.AddWithValue("@choice", comboBox1.Text);
cmd.Parameters.AddWithValue("@input", textBox1.Text);
ds = new DataSet();
da = new SqlDataAdapter(cmd);
da.Fill(ds);
dataGridView1.DataSource = ds.Tables[0];
conn.Close();
}
您忘记了将网格视图与数据源绑定 将此添加到数据源之后
dataGridView1.DataSource = ds.Tables[0];
dataGridView1.DataBind();
您忘记了将网格视图与数据源绑定 将此添加到数据源之后
dataGridView1.DataSource = ds.Tables[0];
dataGridView1.DataBind();
您忘记了将网格视图与数据源绑定 将此添加到数据源之后
dataGridView1.DataSource = ds.Tables[0];
dataGridView1.DataBind();
您忘记了将网格视图与数据源绑定 将此添加到数据源之后
dataGridView1.DataSource = ds.Tables[0];
dataGridView1.DataBind();
不能使用参数来表示列的名称。 您应该使用列名填充组合框,并将其
DropDownStyle
属性设置为DropDownList
(不允许用户键入列名),然后生成查询
private void button1_Click(object sender, EventArgs e)
{
string cmdText = "SELECT * From dbo.Tclients WHERE " + comboBox1.Text + " = @input";
using(SqlConnection conn = new SqlConnection(....))
using(SqlCommand cmd = new SqlCommand(cmdText, conn))
{
conn.Open();
cmd.Parameters.AddWithValue("@input", textBox1.Text);
ds = new DataSet();
da = new SqlDataAdapter(cmd);
da.Fill(ds);
dataGridView1.DataSource = ds.Tables[0];
}
}
不能使用参数来表示列的名称。 您应该使用列名填充组合框,并将其
DropDownStyle
属性设置为DropDownList
(不允许用户键入列名),然后生成查询
private void button1_Click(object sender, EventArgs e)
{
string cmdText = "SELECT * From dbo.Tclients WHERE " + comboBox1.Text + " = @input";
using(SqlConnection conn = new SqlConnection(....))
using(SqlCommand cmd = new SqlCommand(cmdText, conn))
{
conn.Open();
cmd.Parameters.AddWithValue("@input", textBox1.Text);
ds = new DataSet();
da = new SqlDataAdapter(cmd);
da.Fill(ds);
dataGridView1.DataSource = ds.Tables[0];
}
}
不能使用参数来表示列的名称。 您应该使用列名填充组合框,并将其
DropDownStyle
属性设置为DropDownList
(不允许用户键入列名),然后生成查询
private void button1_Click(object sender, EventArgs e)
{
string cmdText = "SELECT * From dbo.Tclients WHERE " + comboBox1.Text + " = @input";
using(SqlConnection conn = new SqlConnection(....))
using(SqlCommand cmd = new SqlCommand(cmdText, conn))
{
conn.Open();
cmd.Parameters.AddWithValue("@input", textBox1.Text);
ds = new DataSet();
da = new SqlDataAdapter(cmd);
da.Fill(ds);
dataGridView1.DataSource = ds.Tables[0];
}
}
不能使用参数来表示列的名称。 您应该使用列名填充组合框,并将其
DropDownStyle
属性设置为DropDownList
(不允许用户键入列名),然后生成查询
private void button1_Click(object sender, EventArgs e)
{
string cmdText = "SELECT * From dbo.Tclients WHERE " + comboBox1.Text + " = @input";
using(SqlConnection conn = new SqlConnection(....))
using(SqlCommand cmd = new SqlCommand(cmdText, conn))
{
conn.Open();
cmd.Parameters.AddWithValue("@input", textBox1.Text);
ds = new DataSet();
da = new SqlDataAdapter(cmd);
da.Fill(ds);
dataGridView1.DataSource = ds.Tables[0];
}
}
Tclients
表是否包含choice
列?您要筛选哪一列?您不能使用参数来表示列的名称或表的名称。我不知道您不能这样做,哦。Tclients
table是否包含choice
column?您要筛选哪一列?您不能使用参数来表示列的名称或表的名称。我不知道您不能这样做,哦。Tclients
table是否包含choice
column?您要筛选哪一列?您不能使用参数来表示列的名称或表的名称。我不知道您不能这样做,哦。Tclients
table是否包含choice
column?您要筛选哪一列?您不能使用参数来表示列或表名。我不知道您不能这样做,哦。DataGridView(或更好的WinForm应用程序)不需要DataBind callit添加dataGridView1.DataBind()后给我一个错误;你能确认它是ASP.NET应用程序吗?错误消息是什么?DataGridView(或者更好的WinForm应用程序)不需要DataBind callit在添加dataGridView1.DataBind()后给我一个错误;你能确认它是ASP.NET应用程序吗?错误消息是什么?DataGridView(或者更好的WinForm应用程序)不需要DataBind callit在添加dataGridView1.DataBind()后给我一个错误;你能确认它是ASP.NET应用程序吗?错误消息是什么?DataGridView(或者更好的WinForm应用程序)不需要DataBind callit在添加dataGridView1.DataBind()后给我一个错误;你能确认它是ASP.NET应用程序吗?什么是错误消息?我想这是开放的Sql注入!只需写下列名!我已经指定将列名添加到组合框中,并将DropDownStyle设置为DropDownList。此样式无法编辑此样式按我所希望的方式工作,非常感谢您的帮助还有一个问题@Steve我应该检查“if(…)”以了解它是否找到用户?我认为这是Sql注入的开放式!只需写下列名!我已经指定将列名添加到组合框中,并将DropDownStyle设置为DropDownList。此样式无法编辑此样式按我所希望的方式工作,非常感谢您的帮助还有一个问题@Steve我应该检查“if(…)”以了解它是否找到用户?我认为这是Sql注入的开放式!只需写下列名!我已经指定将列名添加到组合框中,并将DropDownStyle设置为DropDownList。此样式无法编辑此样式按我所希望的方式工作,非常感谢您的帮助还有一个问题@Steve我应该检查“if(…)”以了解它是否找到用户?我认为这是Sql注入的开放式!只需写下列名!我已经指定将列名添加到组合框中,并将DropDownStyle设置为DropDownList。此样式无法编辑此样式按我所希望的方式工作,非常感谢您的帮助还有一个问题@Steve我应该检查“if(…)”以了解它是否找到用户?