2016-07-27 6 views
0

これまでに質問されたことをお詫びしますが、これを検索する方法さえもわかりませんでした。ベースのSQL select文にカラムを追加する

私はVBのコードの背後に&を探していますか?

私が定義されてSqlCommandを持っている:

Dim cmd As New SqlCommand("Select [Field1], [Field2], [Field3] From [Table] Where [FieldX] = @parameter ") 

どのように私はベースSqlCommandを変更アウトしたコードを使用して別のフィールドを追加することができますか?

だから一時 SqlCommandは次のようになります。私は混乱している場合は

Dim cmd As New SqlCommand("Select [Field1], [Field2], [Field3] [Field4 Added Dynamically] From [Table] Where [FieldX] = @parameter ") 

は誰か、誰もが私に教えてください、私は明確に説明しようとする私の最善を尽くします。

MC

+0

あなたはあなたがあなたが必要と4番目の列は、実行時に定義されているわけ – JamieD77

+0

のCommandTextプロパティを編集することができますか? この場合、変数 'Field4'を設定してカラム名を割り当てることができます。あなたのSQLコマンドでは、この変数をそれに応じて連結するだけです。 – rgoliveira

答えて

1

これはお探しのものですか?

Dim DynamicField = "FieldToAdd" 
Dim cmd As New SqlCommand("Select [Field1], [Field2], [Field3], " + DynamicField + " From [Table] Where [FieldX] = @parameter ") 

私は、正確なVBの構文を覚えていけないが、あなたは置き換える使用することができます。

Dim DynamicField = "FieldToAdd" 
Dim Sql = "Select [Field1], [Field2], [Field3], ##DynamicField## From [Table] Where [FieldX] = @parameter " 
Sql = Sql.Replace("##DynamicField##", DynamicField) 
Dim cmd As New SqlCommand(Sql) 
+0

OMG !!甘いものが私が探しているものを正確に!ありがとう!! – mbcharney

+0

壁を外す質問:SqlCommandを文字列として保存しておけば、何らかの形で文字列にフィールドを動的に追加できます。私はこれを求めている私の上司がすでに聞くことができるので、私はこれを尋ねます... – mbcharney

+0

私は私の答えを更新します。 –

関連する問題