SqlDataSource.SelectCommand Özellik

Tanım

Denetimin temel alınan veritabanından SqlDataSource veri almak için kullandığı SQL dizesini alır veya ayarlar.

public:
 property System::String ^ SelectCommand { System::String ^ get(); void set(System::String ^ value); };
public string SelectCommand { get; set; }
member this.SelectCommand : string with get, set
Public Property SelectCommand As String

Özellik Değeri

Bir SQL dizesi veya verileri almak için kullanan saklı yordamın SqlDataSource adı.

Örnekler

Bu bölüm iki kod örneği içerir. İlk kod örneği, ODBC uyumlu bir veritabanından SelectCommand veri almak ve bir denetimde GridView görüntülemek için metnin temel bir SQL sorgusuna nasıl ayarlandığını gösterir. İkinci kod örneği, microsoft SQL Server veritabanından SelectCommand veri almak ve SelectCommandType bunu bir denetimde DropDownList görüntülemek için metnin saklı yordamın adına ve özelliğinin StoredProcedure değere nasıl ayarlandığını gösterir.

Her iki örnekte de, özellik aracılığıyla DataSourceID veri kaynağı denetimine eklenen veriye bağlı denetimler aşama sırasında PreRender yöntemi otomatik olarak çağıracağından yöntemini açıkça Select çağırmanız Select gerekmez.

Aşağıdaki kod örneği, ODBC uyumlu bir veritabanından SelectCommand veri almak ve bir denetimde görüntülemek için metnin temel bir SQL sorgusuna GridView nasıl ayarlandığını gösterir.

<!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>
<%@Page  Language="VB" %>
<!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>

Aşağıdaki kod örneği, bir SQL Server veritabanından SelectCommand veri almak ve SelectCommandType bir denetimde DropDownList görüntülemek için metnin saklı yordamın adına ve özelliğinin StoredProcedure değere nasıl ayarlandığını gösterir. SelectCommand Veri kaynağı saklı yordamları destekliyorsa özelliği bir SQL sorgusu veya saklı yordamın adı olabilir.

<!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="<%$ 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>

Açıklamalar

SelectCommand özelliği bir SQL sorgusunu veya saklı yordamın adını temsil eder ve yöntemi tarafından SQL Server veritabanından Select veri almak için kullanılır. Tüm sütunları seçmek için Seç komutunda yıldız işareti (*) kullanıyorsanız ve güncelleştirme veya silme işlemlerini gerçekleştirmek için otomatik kod oluşturma kullanıyorsanız, sütunlarda boşluk olmadığından emin olun.

Farklı veritabanı ürünleri farklı SQL türleri kullandığından, SQL dizesinin söz dizimi, özelliği tarafından tanımlanan kullanılmakta olan geçerli ADO.NET sağlayıcısına ProviderName bağlıdır. SQL dizesi parametreli bir sorgu veya komutsa, parametrenin yer tutucusu kullanılan ADO.NET sağlayıcısına da bağlıdır. Örneğin, sağlayıcı System.Data.SqlClientsınıfı için SqlDataSource varsayılan sağlayıcı olan öğesiyse, parametresinin yer tutucusu olur '@parameterName'. Ancak sağlayıcı veya System.Data.OleDbolarak ayarlanırsa System.Data.Odbc parametresinin yer tutucusu olur'?'. Parametreli SQL sorguları ve komutları hakkında daha fazla bilgi için bkz. SqlDataSource Denetimi ile Parametreleri Kullanma.

SelectCommand Veri kaynağı saklı yordamları destekliyorsa özelliği bir SQL dizesi veya saklı yordamın adı olabilir.

özelliği, SelectCommand denetimle ilişkili nesnenin SqlDataSourceView özelliğine temsilci SelectCommand atarSqlDataSource.

Önemli

Güvenlik amacıyla özelliği SelectCommand depolanmaz görünüm durumudur. İstemcide görüntüleme durumunun içeriğinin kodunu çözmek mümkün olduğundan, veritabanı yapısı hakkındaki hassas bilgilerin görünüm durumunda depolanması, bilgilerin açığa çıkmasıyla ilgili bir güvenlik açığına neden olabilir.

Önemli

Değerler, olası bir güvenlik tehdidi olan doğrulama olmadan parametrelere eklenir. Sorguyu Filtering yürütmeden önce parametre değerlerini doğrulamak için olayını kullanın. Daha fazla bilgi için bkz . Betik Açıklarına Genel Bakış.

Şunlara uygulanır

Ayrıca bkz.