SqlDataSource.SelectCommand プロパティ
アセンブリ: System.Web (system.web.dll 内)

Dim instance As SqlDataSource Dim value As String value = instance.SelectCommand instance.SelectCommand = value
/** @property */ public String get_SelectCommand () /** @property */ public void set_SelectCommand (String value)
データを取得するために SqlDataSource が使用する SQL 文字列。

異なるデータベース製品では異なる種類の SQL が使用されるため、SQL 文字列の構文は、現在使用されている ADO.NET プロバイダによって異なります。このプロバイダは、ProviderName プロパティによって示されます。SQL 文字列がパラメータ化されたクエリまたはコマンドである場合、パラメータのプレースホルダは、使用されている ADO.NET プロバイダに依存します。たとえば、プロバイダが SqlDataSource クラスの既定のプロバイダである System.Data.SqlClient の場合、パラメータのプレースホルダは '@parameterName' です。ただし、プロバイダが System.Data.Odbc または System.Data.OleDb に設定されている場合、パラメータのプレースホルダは '?' となります。パラメータ化された SQL クエリとコマンドの詳細については、「SqlDataSource コントロールにおけるパラメータの使用」を参照してください。
データ ソースがストアド プロシージャをサポートしている場合、SelectCommand プロパティには、SQL 文字列またはストアド プロシージャの名前を指定できます。
SelectCommand プロパティは、SqlDataSource コントロールに関連付けられた SqlDataSourceView オブジェクトの SelectCommand プロパティに処理を代行させます。
![]() |
---|
セキュリティのために、SelectCommand プロパティはビューステートには格納されません。クライアントでビューステートの内容をデコードできるため、データベース構造に関する機密情報をビューステートに格納すると、情報公開の脆弱性が生じる可能性があります。 |
Topic | Location |
---|---|
方法 : SqlDataSource コントロールを使用して ODBC データベースに接続する | ASP .NET Web アプリケーションの作成 |
方法 : SqlDataSource コントロールを使用して ODBC データベースに接続する (Visual Studio) | Visual Studio での ASP .NET Web アプリケーションの作成 |

このセクションには、2 つのコード例が含まれています。SelectCommand テキストを基本的な SQL クエリに設定して、ODBC に準拠したデータベースからデータを取得し、GridView コントロールに表示する方法を最初のコード例に示します。SelectCommand テキストをストアド プロシージャの名前に設定し、SelectCommandType プロパティを StoredProcedure 値に設定して、Microsoft SQL Server データベースからデータを取得し、DropDownList コントロールに表示する方法を 2 番目のコード例に示します。
SelectCommand テキストを基本的な SQL クエリに設定して、ODBC に準拠したデータベースからデータを取得し、GridView コントロールに表示する方法を次のコード例に示します。
<%@Page Language="VB" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <HTML> <BODY> <!-- This example uses a Northwind database that is hosted by an ODBC-compliant database. To run this sample, create an ODBC DSN to any database that hosts the Northwind database, including Microsoft SQL Server or Microsoft Access, change the name of the DSN in the ConnectionString, and view the page. --> <FORM runat="server"> <asp:SqlDataSource id="SqlDataSource1" runat="server" ProviderName="System.Data.Odbc" DataSourceMode="DataSet" ConnectionString="dsn=myodbc3dsn;" SelectCommand="SELECT FirstName, LastName, Title FROM Employees"> </asp:SqlDataSource> <asp:GridView id="GridView1" runat="server" AllowSorting="True" DataSourceID="SqlDataSource1"> </asp:GridView> </FORM> </BODY> </HTML>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <HTML> <BODY> <!-- This example uses a Northwind database that is hosted by an ODBC-compliant database. To run this sample, create an ODBC DSN to any database that hosts the Northwind database, including Microsoft SQL Server or Microsoft Access , change the name of the DSN in the ConnectionString, and view the page. --> <FORM runat="server"> <asp:SqlDataSource id="SqlDataSource1" runat="server" ProviderName="System.Data.Odbc" DataSourceMode="DataSet" ConnectionString="dsn=myodbc3dsn;" SelectCommand="SELECT FirstName, LastName, Title FROM Employees"> </asp:SqlDataSource> <asp:GridView id="GridView1" runat="server" AllowSorting="True" DataSourceID="SqlDataSource1"> </asp:GridView> </FORM> </BODY> </HTML>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <HTML> <BODY> <!-- This example uses a Northwind database that is hosted by an ODBC-compliant database. To run this sample, create an ODBC DSN to any database that hosts the Northwind database, including Microsoft SQL Server or Microsoft Access , change the name of the DSN in the ConnectionString, and view the page. --> <FORM runat="server"> <asp:SqlDataSource id="SqlDataSource1" runat="server" ProviderName="System.Data.Odbc" DataSourceMode="DataSet" ConnectionString="dsn=myodbc3dsn;" SelectCommand="SELECT FirstName, LastName, Title FROM Employees"> </asp:SqlDataSource> <asp:GridView id="GridView1" runat="server" AllowSorting="True" DataSourceID="SqlDataSource1"> </asp:GridView> </FORM> </BODY> </HTML>
SelectCommand テキストをストアド プロシージャの名前に設定し、SelectCommandType プロパティを StoredProcedure 値に設定して、SQL Server データベースからデータを取得し、DropDownList コントロールに表示する方法を次のコード例に示します。データ ソースがストアド プロシージャをサポートしている場合、SelectCommand プロパティには、SQL クエリまたはストアド プロシージャの名前を指定できます。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <HTML> <BODY> <FORM runat="server"> <asp:DropDownList id="DropDownList1" runat="server" DataTextField="LastName" DataSourceID="SqlDataSource1" /> <asp:SqlDataSource id="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:MyNorthwind%>" SelectCommandType = "StoredProcedure" SelectCommand="sp_lastnames"> </asp:SqlDataSource> <!-- The sp_lastnames stored procedure is CREATE PROCEDURE sp_lastnames AS SELECT LastName FROM Employees GO --> </FORM> </BODY> </HTML>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <HTML> <BODY> <FORM runat="server"> <asp:DropDownList id="DropDownList1" runat="server" DataTextField="LastName" DataSourceID="SqlDataSource1" /> <asp:SqlDataSource id="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:MyNorthwind%>" SelectCommandType="StoredProcedure" SelectCommand="sp_lastnames"> </asp:SqlDataSource> <!-- The sp_lastnames stored procedure is CREATE PROCEDURE sp_lastnames AS SELECT LastName FROM Employees GO --> </FORM> </BODY> </HTML>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <HTML> <BODY> <FORM runat="server"> <asp:DropDownList id="DropDownList1" runat="server" DataTextField="LastName" DataSourceID="SqlDataSource1" /> <asp:SqlDataSource id="SqlDataSource1" runat="server" ConnectionString="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind;" SelectCommand="sp_lastnames"> </asp:SqlDataSource> <!-- The sp_lastnames stored procedure is CREATE PROCEDURE sp_lastnames AS SELECT LastName FROM Employees GO --> </FORM> </BODY> </HTML>

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- SqlDataSource.SelectCommand プロパティのページへのリンク