第37章、单条记录删除

 

【知识要点】
  (1)单条记录删除

【问题提出】
  对于已经终止合作的客户,我们常常会从表中删除,那么如何完成删除一条记录呢?

【在线指导】

  我们在第31章已经学习了如何删除记录,但如果真的在实际项目中是那样删除一条记录,估计不会有人用你开发的系统。我们更常见的是如上图所示,看中某一条,可以直接删除。

  我们需要学习一个新的事件,你可想而知,如果是三个条件呢?四个条件呢?你要写多少种情况呢?

  我们没有采取以上写法,而是巧妙的使用了……

1、设计界面

  (1)打开Hello项目,单击“启动页>最近使用的项目>Hello”。

  (2)在“解决方案资源管理器”中添加“SqlDelete.aspx”页面。

  (3)从工具箱中拖1个GridView到SqlDelete.aspx页面。

  A.GridView控件ID属性分别为:gvClient

        

   注:对GridView设置样式以及设置标题,由于前面已经多冷重复,在此不再赘述。
B.添加“删除”列

  

 

  (4)添加事件:RowDeleting

  

  单击“gvClient”控件。

  

  在属性栏中单击“闪电”符号(表示事件),然后选择“RowDeleting”,双击其后空白处。

2、添加代码

  (1)双击页面上的“空白”部分。

  我们在Page_Load()中间输入:

//连接SQL SERVER
string ConnSqlServer = "Server=www.woshicainiao.net;Database=SuperMarket;User ID=sa;Pwd=xxx";
SqlConnection Conn = new SqlConnection(ConnSqlServer);

//打开
Conn.Open();

//填充DataSet
string ClientSql = "SELECT * FROM Client";
SqlDataAdapter Adapter = new SqlDataAdapter(ClientSql, Conn);
DataSet Ds = new DataSet();
Adapter.Fill(Ds, "Client");

//执行命令
gvClient.DataSource = Ds.Tables["Client"];
gvClient.DataBind();

//关闭数据库
Conn.Close();

 

  (2)我们为gvClient_RowDeleting()添加代码

  我们在gvClient_RowDeleting(object sender, GridViewDeleteEventArgs e)中间输入:

  注:请你看清楚,是在gvClient_RowDeleting()中间输入,而不是Page_Load()。

//连接SQL SERVER
string ConnSqlServer = "Server=www.woshicainiao.net;Database=SuperMarket;User ID=sa;Pwd=xxx";
SqlConnection Conn = new SqlConnection(ConnSqlServer);

//打开
Conn.Open();

string ClientSql = "SELECT * FROM Client";
SqlDataAdapter Adapter = new SqlDataAdapter(ClientSql, Conn);

//添加CommandBuider类,用于完成数据库表的真实更新
SqlCommandBuilder CbClient = new SqlCommandBuilder(Adapter);

//填充DataSet
DataSet Ds = new DataSet();
Adapter.Fill(Ds, "Client");

//在内存中删除一条记录
Ds.Tables["Client"].Rows[e.RowIndex].Delete();

//更新Ds中Client表(Client是一个内存中的表,即DataTable)
Adapter.Update(Ds, "Client");

//执行命令
gvClient.DataSource = Ds.Tables["Client"];
gvClient.DataBind();

//关闭数据库
Conn.Close();

  讲解:

  注意体会本种写法的妙处,即使10个条件也不会增加多少个SQL语句。

  (2)从“解决方案资源管理器”中,选择“SqlDelete.aspx”,单击右键“在浏览器中查看”。   

 单击“删除”之后,我们发现“郑州林锐科技公司”已经被删除了。

你可能感兴趣的:(第37章、单条记录删除)