0

SQL Server データベースにリンクされた Visual Studio でテーブル アダプターをセットアップしました。MSDN のチュートリアルに従い、この TA に対していくつかのクエリを手動でセットアップしました。私はこれらのクエリを「pre_hardcoded」と考えています。デフォルトのコードを使用してこれらのクエリを呼び出します。

Me.ItemFactTableAdapter.My_Pre_Hardcoded_Query(Me.MasterDataSet.ItemFact) 

(同じマスターテーブルから) 異なる構成でデータを動的に呼び出したいので、これらの事前にハードコードされたクエリがたくさん必要です。したがって、1k クエリを記述する代わりに、次のようなものを使用したいと考えています。

    TableName = "ItemFact"
    H_Label = "ChainName"
    V_Label = "ItemName"
    Dim Measure As String = "Volume"

    Dim Select_Clause As String = "select distinct " & H_Label & "," & V_Label & ", Sum(" & Measure & ") as " & Measure & " "
    Dim From_Clause As String = "from " & TableName & " "
    Dim Where_Clause As String = ""
    Dim GroupBy_Clause As String = "group by " & H_Label & "," & V_Label

    Dim SelectionQuery = Select_Clause & From_Clause & Where_Clause & GroupBy_Clause

「メジャー」と「H」および「V ラベル」の値を動的に更新できる場所。問題は、次のように使用できるように、この SelectionQuery を TA の有効な部分として宣言するにはどうすればよいかということです。

Me.ItemFactTableAdapter.SelectionQuery (Me.MasterDataSet.ItemFact) 
4

2 に答える 2

1

動的クエリの場合、汎用 DataAdapter を作成する必要があります。

 Dim da As New SqlDataAdapter(SelectionQuery, Me.ItemFactTableAdapter.Connection)
 da.Fill(Me.MasterDataSet.ItemFact)
于 2013-10-02T13:20:44.517 に答える