私は、まったくよく知らない、強く型付けされた SQL テーブル アダプターを使用するプロジェクトに取り組んでいます。デザイナーを使用して新しい列を追加しましたが、以前の既存のクエリ (基本フェッチ) では新しい列が表示されません。いろいろと考えた後、次のようにして、クエリビルダーで新しい列を「見る」ことができました。
1) クエリを右クリックし、[構成] を選択します。
2) データベース接続文字列を選択するように求められるまで、[前へ] ボタンをクリックします。
新しい列を含む開発データベースに変更する必要がありました
3) 他の変更を行わずに、[次へ] ボタンを使用してウィザードを続行します。
デザイナーを使用して列を手動で追加していたにもかかわらず、これらの手順が必要であったことに注意してください。
これを行うと、デザイナーのテーブルに関連付けられたクエリは、新しい列を問題なく「見る」ことができました。この更新されたテーブルを FirstTable と呼びます。
ただし、 FirstTable との結合を行った別のテーブルからの既存の別のクエリに問題があります。この別のテーブルを SecondTable と呼びます。
SecondTable を右クリックして [構成] を選択し、ウィザードで [前へ] をクリックして、適切な接続文字列を選択できるようにしました。おそらく、この新しい接続文字列で SecondTable を再設計したウィザードを終了しました (このテーブルに実際の変更はありませんでした)。
ただし、SecondTable を FirstTable に結合するクエリは、FirstTable からの新しい列を認識できません。
私の最後の試みは、これら 2 つのテーブル間でマッピングされた「関係」を削除し、再作成することでした。これにより、SecondTable が FirstTable の新しい列を認識できるようになり、結合で使用できるようになると考えました。
現在、SELECT ステートメントを直接変更するかどうか、またはクエリ ビルダーを使用するかどうかに関係なく、「無効な列名」エラーが発生します (クエリ ビルダーは新しい列をまったく認識せず、追加できません)。手動)。そして、テーブル名を完全に修飾しました (例: dbo.TableName.ColumnName)
私はこれに対して数時間頭を悩ませてきました。誰にもヒントはありますか?
編集:クエリビルダーに FirstTable を再度追加して、利用可能な列データが更新されるかどうかを確認しました。運が悪い-それはまだ古い列名に固執しています。