2012-01-16 12 views
-2
<asp:SqlDataSource ID="DataSource1" runat="server" 
    ConnectionString="<%$ ConnectionStrings:DbConnection %>" 
    ProviderName="<%$ ConnectionStrings:DbConnection.ProviderName %>" 
    SelectCommand="select somefield from sometable where somefield in (?)"> 
    <SelectParameters> 
     <asp:Parameter DefaultValue="" Name="SomeFiedValue" /> 
    </SelectParameters> 
</asp:SqlDataSource> 

上記のSQLクエリのパラメータの値の一覧はどのように割り当てられますか?SQL IN句のパラメータを持つASP.NET DataSource

答えて

0

これを試してください。

protected void DataSource1_Selecting(object sender, SqlDataSourceSelectingEventArgs e) 
{ 
    e.Command.Parameters["SomeFieldValue"].Value = yourdata; 
} 

EDIT:あなたの回答に基づいて

、以下のウェブサイトを見てください。これはDB2でこの問題を解決する1つの方法を説明します。そのページのコメントに基づいて

http://www.tek-tips.com/viewthread.cfm?qid=1443561

、あなたの問題のための可能な解決策は以下のようになります。

select somefield from sometable where somefield in 
(select ? from SYSIBM.SYSDUMMY1) 
+0

私は、この単一の値「someValueの」と協力してしまったが、どのようにそれは私が働いてますかリスト "someValue1、someValue2"で? – jax

+0

可能な限り最高の解決策を提供できるように、あなたが何を探しているかについてより多くの情報を提供してください。 –

+0

私はこのようなSQLを書いておきたいと思います。select somefield from sometable somefield in( 'val1'、 'val2'、 'val3') 'しかし、in節は任意の数の値を持つことができます。あるコールでは別のコールが3になる可能性があります。そのため、変数としてパラメータを使用してcaluseをパラメータとして使用する必要があります。 – jax

関連する問題