4 つのテーブルを新しいテーブルに移行しています。Visual Basic 2008を使用しています。ExecuteNonQuery()
私の SQL スキルは非常にさびついており、時代遅れになっている可能性があります (1998 年)。
これが私のジレンマです。画面を構成するために、もともと1つのテーブルからデータを取得していました。その後、クライアントは「理由」フィールド、「情報」フィールドなどを追加することにしました。
構造は下位互換性がなければならなかったため、新しいテーブルが追加されました。今、私はそれらを1つにまとめています。
私の問題は、すべての画面がすべてのテーブルを使用しているわけではないということです。画面には「写真」と「情報」フィールドがありますが、「方法」または「理由」はありません</p>
INSERT
したがって、テーブルの 1 つから主キーを使用し、残りを追加したいと考えています。
例: 最初の行は「Table1」からプライマリ フィールドを取得し、残りを同じ行に結合します。
2行目は「Table1」を使用していない可能性があり、「主キー」がありません???
「主キー」を取得して、テキストを含むテーブルから比較 (これは 1 対多) を行うことを検討していましたが、それは別のテーブルを追加するだけですか?
また、1 つのテーブルを追加し、残りのテーブルを 4 つのステップで更新することも検討していましたか?
アドバイスをいただければ幸いです。SQL の例は私の 1 日を作るでしょう…</p>
古いテーブル: それぞれに主キーと 1 つのデータ フィールドがあります。
Table1
PK Data
Table2
PK Data
Table3
PK Data
Table4
PK Data
新しいテーブル: 主キーと使用している 16 個の新しい列がExecuteNonQuery()
あるため、擬似コードは次のようになります。
SQLStr = "
Insert Into NewTable(PK, COL5, COL5, COL7, COL8, COL13, COL14, COL15, COL16)
Select TABLE4.PK, TABLE4.DATA, TABLE2.PK, TABLES3.PK, TABLE1.PK, 'Photo','Information',
'Why', 'How'
From Table1, Table2, table3, Table4 IN 'C:\Temp\oldDatabase.mdb'"