这段代码实现的是listview控件中数据入库,但是需要添加一些代码以实现如何在每次数据入库之前先清空表里数据呢?或者说覆盖上次表中数据呢?
    
private void button4_Click(object sender, EventArgs e)
        {
            string cons = "Persist Security Info=false;Data Source=.;Initial Catalog=yang;User ID=sa;Password=sql";
            SqlConnection sc = new SqlConnection(cons);
            sc.Open();
            long c = 0;
                        foreach (ListViewItem l in this.listView1.Items)
            {
                c++;//先得到LISTVIEW有多少条记录
            }
                             foreach (ListViewItem l in this.listView1.Items)
                {
               
                    //把LISTVIEW中的每行读到一个字符串数组中
                    string[] b = new string[6];
                    //b[o]为井深,或者别的X轴数据,其他为相应变化的Y轴数据                    for (int a = 0; a < l.SubItems.Count; a++)
                    {                        //MessageBox.Show("SUBITEM:" + l.SubItems[a].Text.ToString());
                        b[a] = l.SubItems[a].Text.ToString();
                    }
                    //建立插入数据库的SQL语句
                    string que = "insert into jisuanjieguo values('" + b[0].ToString() + "'" + ",'" + b[1].ToString() + "'" + ",'" + b[2].ToString() + "','" + b[3].ToString() + "','" + b[4].ToString() + "','" + b[5].ToString() + "')";
                    SqlCommand ss = sc.CreateCommand();
                    ss.CommandText = que;
                    ss.ExecuteNonQuery();
                    ss = null;
                           
            }          
          
            sc.Close();
            sc = null;
            MessageBox.Show(" saved!");
        }

解决方案 »

  1.   

    "需要添加一些代码以实现如何在每次数据入库之前先清空表里数据呢"
    ???????
    直接在此加如一条执行命令  delete from 表名  不就可以把表里的数据清空了吗???
      

  2.   

    在foreach循環中,針對每個ListViewItem都做這樣的操作:先查詢數據庫是否已經有數據,如果沒有就用insert語句新建,如果已有記錄就執行update操作.
    另外,也可以使用存儲過程,效率會高一些
      

  3.   

    最簡單的辦法是在操作之前,直接使用"truncate table jisuanjieguo"或"delete from jisuanjieguo"來刪除記錄,但是必須與後面的代碼一起使用事務,否則一旦後面更新失敗,數據表的資料已經無法恢復了
      

  4.   

    truncate table TableName
    就可以清除表数据