Ce sujet n'a pas encore été évalué - Évaluez ce sujet

SqlDataSource.SelectCommand, propriété

Mise à jour : novembre 2007

Obtient ou définit la chaîne SQL que le contrôle SqlDataSource utilise pour récupérer des données de la base de données sous-jacente.

Espace de noms :  System.Web.UI.WebControls
Assembly :  System.Web (dans System.Web.dll)

public string SelectCommand { get; set; }
/** @property */
public String get_SelectCommand()
/** @property */
public  void set_SelectCommand(String value)

public function get SelectCommand () : String
public function set SelectCommand (value : String)
<asp:SqlDataSource SelectCommand="String" />

Valeur de propriété

Type : System.String

Chaîne SQL ou nom d'une procédure stockée que SqlDataSource utilise pour récupérer des données.

La propriété SelectCommand représente une requête SQL ou le nom d'une procédure stockée, et est utilisée par la méthode Select pour récupérer les données d'une base de données SQL Server.

Étant donné que les différents systèmes de base de données utilisent des variantes de langage SQL, la syntaxe de la chaîne SQL dépend du fournisseur ADO.NET utilisé, qui est identifié par la propriété ProviderName. Si la chaîne SQL est une requête ou une commande paramétrée, l'espace réservé du paramètre dépend également du fournisseur ADO.NET utilisé. Par exemple, si le fournisseur est System.Data.SqlClient, lequel est le fournisseur par défaut pour la classe SqlDataSource, l'espace réservé du paramètre est '@parameterName'. Toutefois, si le fournisseur a la valeur System.Data.Odbc ou System.Data.OleDb, l'espace réservé du paramètre est '?'. Pour plus d'informations sur les commandes et les requêtes SQL paramétrées, consultez Utilisation de paramètres avec le contrôle SqlDataSource.

La propriété SelectCommand peut être une chaîne SQL ou le nom d'une procédure stockée, si la source de données les prend en charge.

La propriété SelectCommand délègue à la propriété SelectCommand de l'objet SqlDataSourceView associé au contrôle SqlDataSource.

Note de sécurité :

Pour des raisons de sécurité, la propriété SelectCommand n'est pas stockée dans l'état d'affichage. Étant donné qu'il est possible de décoder le contenu d'état d'affichage sur le client, le stockage d'informations sensibles relatives à la structure de base de données dans l'état d'affichage pourrait entraîner une faille dans la divulgation d'informations.

Note de sécurité :

Les valeurs sont insérées sans validation dans les paramètres, ce qui constitue une menace potentielle pour la sécurité. Utilisez l'événement Filtering pour valider les valeurs de paramètre avant d'exécuter la requête. Pour plus d'informations, consultez Vue d'ensemble des attaques de script.

Cette section comprend deux exemples de code. Le premier exemple de code illustre comment définir le texte SelectCommand sur une requête SQL de base afin de récupérer des données d'une base de données ODBC et de les afficher dans un contrôle GridView. Le deuxième exemple de code montre comment définir le texte SelectCommand sur le nom d'une procédure stockée et la propriété SelectCommandType sur la valeur StoredProcedure pour récupérer des données d'une base de données Microsoft SQL Server et les afficher dans un contrôle DropDownList.

Dans les deux exemples, il n'est pas nécessaire d'appeler la méthode Select explicitement, car les contrôles liés aux données qui sont joints au contrôle de source de données via la propriété DataSourceID appellent automatiquement la méthode Select pendant la phase PreRender.

L'exemple de code suivant illustre comment définir le texte SelectCommand sur une requête SQL de base afin de récupérer des données d'une base de données ODBC et de les afficher dans un contrôle GridView.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<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 id="form1" 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 xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<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 id="form1" 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>


L'exemple de code suivant montre comment définir le texte SelectCommand sur le nom d'une procédure stockée et la propriété SelectCommandType sur la valeur StoredProcedure pour récupérer des données d'une base de données SQL Server et les afficher dans un contrôle DropDownList. La propriété SelectCommand peut être une requête SQL ou le nom d'une procédure stockée, si la source de données les prend en charge.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
        <form id="form1" 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 xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
        <form id="form1" 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 Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professionnel Édition x64, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

.NET Framework

Pris en charge dans : 3.5, 3.0, 2.0
Cela vous a-t-il été utile ?
(1500 caractères restants)

Ajouts de la communauté

AJOUTER
© 2013 Microsoft. Tous droits réservés.