<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=409563&amp;view=findpost&amp;p=3684601</guid>
        <pubDate>Thu, 15 Sep 2016 17:24:30 +0000</pubDate>
        <title>Не получается связать таблицы</title>
        <link>https://forum.sources.ru/index.php?showtopic=409563&amp;view=findpost&amp;p=3684601</link>
        <description><![CDATA[tumanovalex: Хотел бы научиться связывать таблицы без использования мастеров. По нажатию клавиши в двух DataGridView нужно показать связанную информацию из двух таблицы базы данных Access, но код<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;&nbsp; &nbsp;private void btnFill_Click(object sender, EventArgs e)</div><div class="code_line">&nbsp;&nbsp; &nbsp;{</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;OleDbConnection cn = new OleDbConnection(&quot;Provider=Microsoft.Jet.OLEDB.4.0; Data Source=&quot; + Application.StartupPath + &quot;\DBtest.mdb&quot;);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;try</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;{</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;cn.Open();</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;}</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;catch</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;{</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;MessageBox.Show(&quot;Ошибка соединения с базой данных DBtest.mdb&quot;, &quot;Ошибка подключения к базе&quot;,</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; MessageBoxButtons.OK, MessageBoxIcon.Error);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;Application.Exit();</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;}</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;DataSet ds = new DataSet();</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;DataTable dtMain = ds.Tables.Add();</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ds.Tables[0].Columns.Add(&quot;FactorID&quot;, typeof(Int32));</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ds.Tables[0].Columns[0].Unique = true;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ds.Tables[0].Columns.Add(&quot;FactorName&quot;, typeof(String));</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ds.Tables[0].Columns[1].Unique = true;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ds.Tables[0].Columns.Add(&quot;FactorMemo&quot;, typeof(String));</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;DataTable dtChaild = ds.Tables.Add();</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ds.Tables[1].Columns.Add(&quot;FactorValueID&quot;, typeof(Int32));</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ds.Tables[1].Columns[0].Unique = true;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ds.Tables[1].Columns.Add( &quot;FactorID&quot;, typeof(Int32));</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ds.Tables[1].Columns.Add(&quot;ValueID&quot;, typeof(Int32));</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ForeignKeyConstraint FactorValueKey = new ForeignKeyConstraint(ds.Tables[0].Columns[0],</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;ds.Tables[1].Columns[1]);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ds.Tables[1].Constraints.Add(FactorValueKey);</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;DataRelation FactorValueRel = new DataRelation(&quot;RelFactorValue&quot;, ds.Tables[0].Columns[0],</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ds.Tables[1].Columns[1]);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ds.Relations.Add(FactorValueRel);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;OleDbCommand cmd = cn.CreateCommand();</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;cmd.CommandText = &quot;SELECT *FROM tblFactor&quot;;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;OleDbDataAdapter daFactor = new OleDbDataAdapter();</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;daFactor.SelectCommand = cmd;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;daFactor.Fill(ds.Tables[0]);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;dataGridView1.DataSource = ds.Tables[0];</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;OleDbCommand cmd2 = cn.CreateCommand();</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;cmd2.CommandText = &quot;SELECT *FROM tblValueFactor&quot;;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;OleDbDataAdapter daValueFactor = new OleDbDataAdapter();</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;daValueFactor.SelectCommand = cmd2;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;daValueFactor.Fill(ds.Tables[1]);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;dataGridView2.DataSource = ds.Tables[1];</div><div class="code_line">&nbsp;&nbsp; &nbsp;}</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script> не работает, во второй таблице появляются все записи. Подскажите, пожалуйста, что я делаю неправильно. Проект прикрепил<br>
<span class="b-attach" data-size="25606" data-hits="613" data-attach-id="50150" data-attach-post-id="3684601">
			<span class="b-attach__title"></span><a class='b-attach-link' href='https://forum.sources.ru/index.php?act=Attach&amp;type=post&amp;id=3684601&amp;attach_id=50150' title='Скачать файл' target='_blank'>DBtest.zip</a> (, : 613)
		</span>]]></description>
        <author>tumanovalex</author>
        <category>.NET: Базы данных</category>
      </item>
	
      </channel>
      </rss>
	