datagridview 如果全选 得到编号数组
StringBuilder sp=new StringBuilder();
for(int i=0;i<...;i++)
{
   sp.AppendFormat("delete from where id={0}",...[i]);
}添加一样的道理最简单的办法  然后 用事务或存储过程
一般事务耗性能

解决方案 »

  1.   

    用存储过程,写的语句是//插入
    Insert into TableName(a,b,c,d)value(@a,@b,@c,@d)
    //删除
    Delete from TableName where a=@a;
    在程序中,定义一个操作数据源的实体Entity//插入
    IList list = (IList)(dgvList.ItemsSource);
    foreach (Entity en in e.Data) //e.Data为你将要插入的数据列表
    {
         Entity idObject = new Entity ();
         idObject.a= en.a;
         idObject.b= en.b;
         idObject.c= en.c;
         idObject.d= en.d; 
     
         list.Add(idObject);
         //更将到数据库
          OnInsert(idObject);
    }//删除
    for (int i = 0; i < dgvList.SelectedItems.Count;i++ )
    {
        Entity item = dgvList.SelectedItems[i] as Entity;
        if (item != null)
        {
             OnDelete(item);
        }
    }