2011-03-24 24 views
0

我有一个数据库与表安全和2字段的用户名和密码,其中包含几个重复的数据我想删除C#.net中的重复什么是SQL语句我会使用。重复的用户名和密码来自另一个文件更新数据库文件。或者,我如何只复制数据库基本文件中不存在的记录。我需要在CSharp.net中做到这一点,它是我想要删除数据的代码的一部分。 请帮助我需要从数据库中删除重复的数据在MS访问的可编程

 private void ReadUFbtn_Click(object sender, EventArgs e) 
     { //new data in desktop so it comes as Source so main becomes as backup 
      // backup is main so here is mail pis in opened 
      string targetPath = @"C:\Users\User\Desktop\Prashant\"; 
      string constr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\\PIS.mdb;Jet OLEDB:Database Password=Prashant;"; 
      Con = new OleDbConnection(@constr); 
      Con.Open(); 
      Com = new OleDbCommand(); 
      Com.Connection = Con; 

       try 
       { 
        if (!System.IO.Directory.Exists(targetPath)) 
        { 
         DialogResult X = MessageBox.Show("The Direcory/5File Dose not exits", "PIS System"); 
        } 
        else 
        { 
         //backup open   
         if (Con.State == ConnectionState.Closed) 
          Con.Open(); 
          //target //main //backup    //source from data //desktop 
          //backup           // main data 
         string selQuery = "INSERT INTO Security SELECT DISTINCT * FROM [MS Access;DATABASE=c:\\Users\\User\\Desktop\\Prashant\\PIS.mdb;PWD=Prashant;].[Security]"; 

          Com.CommandText = selQuery; 
          Com.CommandType = CommandType.Text; 
          Com.Connection = Con; 

          MessageBox.Show("File Updated"); 
          Com.CommandText = "SELECT DISTINCT * FROM Security "; 

          int result = Com.ExecuteNonQuery(); 

        }      
       } 
       catch(Exception ex) 
        { 
         MessageBox.Show(ex.Message); 
        } 
      } 
    } 
} 

回答

0

执行这样的事情应该在MS-访问删除重复记录

delete from Security 
where id not in 
(select min(id) from Security T2 
where T2.username=Security.username and T2.password=Security.password)