title: How to merge DataTable without copies?
body: <p>I Have two databases generated from the same SQL code and two datasets created from this databases. I want to create one dataset from these two datasets, and i thought i could do this like this:</p>
  
  <pre><code>public void MergeGatunek()
  {
      DB1.DataSetGatunek.Tables[0].Merge(DB2.DataSetGatunek.Tables[0], true);
      DataSetGatunek.Tables[0].Merge(DB1.DataSetGatunek.Tables[0], true);
      //DataSetGatunek is the final DataSet
  }
  </code></pre>
  
  <p>and this is the result: </p>
  
  <p><img src="https://i.stack.imgur.com/xhM1R.jpg" alt=""></p>
  
  <p>App is in Polish but it shouldnt be a problem.</p>
  
  <p>Every next new row just multiplies the results of previous adds. My goal is to show data from two databases in one DataGridView, and to add missing rows(if there are any).</p>
  
  <p>I'm using this method for filling dataset, adding new rows etc.</p>
  
  <pre><code>public void SelectGatunek(string SQL)
  {
      try
      {
          Connection.Open();
          DataAdapter = new SqlDataAdapter(SQL, Connection);
          commandBuilder = new SqlCommandBuilder(DataAdapter);
          DataSetGatunek.Clear();
          DataAdapter.Fill(DataSetGatunek);
  
          Connection.Close();
      }
      catch (Exception ex)
      {
          System.Windows.Forms.MessageBox.Show(ex.Message);
      }
  }
  
  SelectGatunek("Select * FROM t_gatunek");
  
  SelectGatunek("INSERT INTO t_gatunek (gatunek) VALUES ('" + DG.GetGatunek + "')");
  </code></pre>