我有一个SQL数据库,用于存储通过文本框输入的值。然后,它通过网格框在我的输出屏幕上显示该数据库的值。有没有办法让用户可以选择要删除的列?就像网格框中值附近的删除按钮一样。
如果不是,我如何删除SQL中的变量列号。比如,如果用户想要删除行说10.如何将其合并到我的SQL删除命令中。
它应该包含' top'命令?如果是这样的话?
protected void Button3_Click(object sender, EventArgs e)
{
SqlConnection sc = new SqlConnection();
sc.ConnectionString = ("Data Source=abc; Initial Catalog=VisualStudioTest; User ID=USER; Password=PASS");
sc.Open();
SqlCommand com = new SqlCommand();
com.Connection = sc;
com.CommandText = ("delete from notes");//initially I've kept this to delete everything.
com.ExecuteNonQuery();
sc.Close();
Response.Redirect(Request.RawUrl);
}
标记:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataSourceID="SqlDataSource1"
OnSelectedIndexChanged="GridView1_SelectedIndexChanged1">
<Columns>
<asp:BoundField DataField="Notes" HeaderText="Notes" SortExpression="Notes" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:VisualStudioTestConnectionString3 %>"
SelectCommand="SELECT [Notes] FROM [Notes]"
OnSelecting="SqlDataSource1_Selecting">
</asp:SqlDataSource>
答案 0 :(得分:0)
我假设你的目标是删除一行。
我想到的最简单的方法是添加一个标识字段作为表的键,将新列添加到DataKeyNames
的{{1}}列表中,然后将参数添加到GridView
中的DeleteQuery
:
SqlDataSource
最后一步是将删除控件添加到delete from notes where identityCol = @identityCol;
。