SqlDataSourceView.SelectCommand Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Dient zum Abrufen oder Festlegen der SQL-Zeichenfolge, die das SqlDataSourceView Objekt zum Abrufen von Daten aus der zugrunde liegenden Datenbank verwendet.
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
Eigenschaftswert
Eine SQL-Zeichenfolge, die zum Abrufen von SqlDataSourceView Daten verwendet wird.
Beispiele
Dieser Abschnitt enthält zwei Codebeispiele. Im ersten Codebeispiel wird veranschaulicht, wie der SelectCommand Text auf eine einfache SQL-Abfrage festgelegt wird, um Daten aus einer Microsoft SQL Server-Datenbank abzurufen und in einem DropDownList Steuerelement anzuzeigen. Im zweiten Codebeispiel wird veranschaulicht, wie der SelectCommand Text auf den Namen einer gespeicherten Prozedur festgelegt wird, um Daten aus einer SQL Server-Datenbank abzurufen und in einer DropDownList.
Im folgenden Codebeispiel wird veranschaulicht, wie der SelectCommand Text auf eine einfache SQL-Abfrage festgelegt wird, um Daten aus einer SQL Server-Datenbank abzurufen und in einem DropDownList Steuerelement anzuzeigen. Die Button Steuerelemente TextBox werden als einfache Schnittstelle bereitgestellt, um die Adresse für den ausgewählten Benutzer in der DropDownListDatei zu aktualisieren.
<%@Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
private void On_Click(Object source, EventArgs e) {
try {
SqlDataSource1.Update();
}
catch (Exception except) {
// Handle the Exception.
}
Label2.Text="The record was updated successfully!";
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:SqlDataSource
id="SqlDataSource1"
runat="server"
ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
SelectCommand="SELECT EmployeeID, LastName, Address FROM Employees"
UpdateCommand="UPDATE Employees SET Address=@Address WHERE EmployeeID=@EmployeeID">
<UpdateParameters>
<asp:ControlParameter Name="Address" ControlId="TextBox1" PropertyName="Text"/>
<asp:ControlParameter Name="EmployeeID" ControlId="DropDownList1" PropertyName="SelectedValue"/>
</UpdateParameters>
</asp:SqlDataSource>
<asp:DropDownList
id="DropDownList1"
runat="server"
DataTextField="LastName"
DataValueField="EmployeeID"
DataSourceID="SqlDataSource1">
</asp:DropDownList>
<br />
<asp:Label id="Label1" runat="server" Text="Enter a new address for the selected user."
AssociatedControlID="TextBox1" />
<asp:TextBox id="TextBox1" runat="server" />
<asp:Button id="Submit" runat="server" Text="Submit" OnClick="On_Click" />
<br /><asp:Label id="Label2" runat="server" Text="" />
</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">
<script runat="server">
Sub On_Click(ByVal source As Object, ByVal e As EventArgs)
Try
SqlDataSource1.Update()
Catch except As Exception
' Handle the Exception.
End Try
Label2.Text="The record was updated successfully!"
End Sub 'On_Click
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:SqlDataSource
id="SqlDataSource1"
runat="server"
ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
SelectCommand="SELECT EmployeeID, LastName, Address FROM Employees"
UpdateCommand="UPDATE Employees SET Address=@Address WHERE EmployeeID=@EmployeeID">
<UpdateParameters>
<asp:ControlParameter Name="Address" ControlId="TextBox1" PropertyName="Text"/>
<asp:ControlParameter Name="EmployeeID" ControlId="DropDownList1" PropertyName="SelectedValue"/>
</UpdateParameters>
</asp:SqlDataSource>
<asp:DropDownList
id="DropDownList1"
runat="server"
DataTextField="LastName"
DataValueField="EmployeeID"
DataSourceID="SqlDataSource1">
</asp:DropDownList>
<br />
<asp:Label id="Label1" runat="server" Text="Enter a new address for the selected user."
AssociatedControlID="TextBox1" />
<asp:TextBox id="TextBox1" runat="server" />
<asp:Button id="Submit" runat="server" Text="Submit" OnClick="On_Click" />
<br /><asp:Label id="Label2" runat="server" Text="" />
</form>
</body>
</html>
Im folgenden Codebeispiel wird veranschaulicht, wie der SelectCommand Text auf den Namen einer gespeicherten Prozedur festgelegt wird, um Daten aus einer SQL Server-Datenbank abzurufen und in einem DropDownList Steuerelement anzuzeigen. Die SelectCommand Eigenschaft kann eine SQL-Abfrage oder der Name einer gespeicherten Prozedur sein, wenn die Datenquelle gespeicherte Prozeduren unterstützt.
<!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>
Hinweise
Da unterschiedliche Datenbankprodukte unterschiedliche SQL-Varianten verwenden, hängt die Syntax der SQL-Zeichenfolge von dem aktuellen ADO.NET verwendeten Anbieter ab, der von der ProviderName Eigenschaft identifiziert wird. Wenn es sich bei der SQL-Zeichenfolge um eine parametrisierte Abfrage oder einen parametrisierten Befehl handelt, hängt der Platzhalter des Parameters auch vom verwendeten ADO.NET Anbieter ab. Wenn der Anbieter beispielsweise der System.Data.SqlClientStandardanbieter für die SqlDataSource Klasse ist, lautet '@parameterName'der Platzhalter des Parameters . Wenn der Anbieter jedoch auf den System.Data.Odbc Oder-Wert System.Data.OleDbfestgelegt ist, lautet '?'der Platzhalter des Parameters . Weitere Informationen zu parametrisierten SQL-Abfragen und -Befehlen finden Sie unter Verwenden von Parametern mit dem SqlDataSource-Steuerelement.
Die SelectCommand Eigenschaft kann eine SQL-Zeichenfolge oder der Name einer gespeicherten Prozedur sein, wenn die Datenquelle gespeicherte Prozeduren unterstützt.
Von Bedeutung
Es ist sicherer, eine gespeicherte Prozedur zu verwenden als eine SQL-Anweisung für die SelectCommand Eigenschaft.
Der Wert der SelectCommand Eigenschaft wird im Ansichtszustand gespeichert.