tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトル2つのデータテーブルの連結方法
記事No5716
投稿日: 2007/06/25(Mon) 23:06
投稿者びぎ
 こんばんは。

データテーブルの連結について教えて下さい。

訳あってSELECT ・・のLEFT OUTER JOIN が5つまでしか
使えずデータテーブルを2つに分けてしまいました。

その2つのデータテーブルをある項目で判断し
1つのデータテーブルにしたいのですが
このようなことはできますか?

例としまして
1つ目のデータテーブル
HIN , CODE1 , CODE2

2つ目のデータテーブル
HIN , CODEME1 , CODEME2

とあった場合
HIN , CODE1 , CODEME1 , CODE2, CODEME2
というデータテーブルにしたいのです。

宜しくお願いします。

[ツリー表示へ]
タイトルRe: 2つのデータテーブルの連結方法
記事No5717
投稿日: 2007/06/25(Mon) 23:21
投稿者魔界の仮面弁士
> その2つのデータテーブルをある項目で判断し
> 1つのデータテーブルにしたいのですが
> このようなことはできますか?

DataTable の Merge メソッドを使うとか。


Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load
    Dim table1 As New DataTable()
    table1.Columns.Add("HIN")
    table1.Columns.Add("CODE1")
    table1.Columns.Add("CODE2")
    table1.Rows.Add("100", "101", "102")
    table1.Rows.Add("110", "111", "112")
    table1.Rows.Add("300", "121", "142")
    table1.Rows.Add("310", "131", "152")
    table1.PrimaryKey = New DataColumn() {table1.Columns("HIN")}
    table1.AcceptChanges()

    Dim table2 As New DataTable()
    table2.Columns.Add("HIN")
    table2.Columns.Add("CODEME1")
    table2.Columns.Add("CODEME2")
    table2.Rows.Add("200", "201", "202")
    table2.Rows.Add("210", "211", "212")
    table2.Rows.Add("300", "221", "242")
    table2.Rows.Add("310", "231", "252")
    table2.PrimaryKey = New DataColumn() {table2.Columns("HIN")}
    table2.AcceptChanges()

    '★ Merge メソッドで結合 ★
    Dim table0 As New DataTable()
    table0.Merge(table1)
    table0.Merge(table2)
    'table0.Columns("CODEME1").SetOrdinal(2)

    DataGridView1.DataSource = table0
End Sub

[ツリー表示へ]
タイトルRe^2: 2つのデータテーブルの連結方法
記事No5721
投稿日: 2007/06/26(Tue) 11:29
投稿者びぎ
 魔界の仮面弁士さん、ありがとうございます。

 何とかできました。  

  table2.PrimaryKey = New DataColumn() {table2.Columns("HIN")}
   table2.AcceptChanges()
 
 がポイントなのですね。
 
 この行が無く、単純にMergeしたら2つのデータテーブルが
 くっつきませんでした。

[ツリー表示へ]
タイトルデータグリッドビューに値を入れたいのですが。.NET
記事No5870
投稿日: 2007/07/19(Thu) 17:52
投稿者madoka
'KYU70000_1のデータグリッドに新しい行を追加する。

  KYU70000_1.DataGridView1.この後に、新しい行を追加したいのですが?


[ツリー表示へ]