Gets or sets the SQL string that the SqlDataSource control uses to delete data from the underlying database.
Assembly: System.Web (in System.Web.dll)
The Delete method.represents an SQL query or the name of a stored procedure, and is used by the
Because different database products use different varieties of SQL, the syntax of the SQL string depends on the current ADO.NET provider being used, which is identified by the ProviderName property. If the SQL string is a parameterized query or command, the syntax of the parameter also depends on the ADO.NET provider being used. For example, if the provider is the System.Data.SqlClient, which is the default provider for the SqlDataSource class, the syntax of the parameter is '@parameterName'. However, if the provider is set to the System.Data.Odbc or System.Data.OleDb, the placeholder of the parameter is '?'. For more information about parameterized SQL queries and commands, see Using Parameters with the SqlDataSource Control.
Theproperty can be an SQL string or the name of a stored procedure, if the database supports stored procedures.
For security purposes, theproperty is not stored in view state. Because it is possible to decode the contents of view state on the client, storing sensitive information about the database structure in view state could result in an information disclosure vulnerability.
The following code example demonstrates how to set the GridView control. The GridView renders a Delete button automatically when the AutoGenerateDeleteButton property is set to true. Additionally, when the Delete button is clicked, the GridView control automatically populates the DeleteParameters collection and calls the Delete method. Finally, because this code example deletes data, an event handler is added to attempt to back up the database to disk before the Delete operation is performed.text to delete an order from the Northwind database Orders table. Data is retrieved from the Orders table and displayed in a
<%@Page Language="VB" %> <%@Import Namespace="System.Data.SqlClient" %> <!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_Record_Deleting(ByVal source As Object, ByVal e As SqlDataSourceCommandEventArgs) ' Cancel the delete operation if the checkbox is not checked. If Not CheckBox1.Checked e.Cancel = True Label1.Text = "The command was cancelled because the CheckBox was not checked." End If End Sub 'On_Record_Deleting Sub On_Record_Deleted(ByVal source As Object, ByVal e As SqlDataSourceStatusEventArgs) Label1.Text = e.AffectedRows & " row(s) were deleted" End Sub </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" DataSourceMode="DataSet" ConnectionString="<%$ ConnectionStrings:MyNorthwind%>" SelectCommand="SELECT * FROM Orders" DeleteCommand="DELETE FROM [Order Details] WHERE OrderID=@OrderID;DELETE FROM Orders WHERE OrderID=@OrderID;" OnDeleting="On_Record_Deleting" OnDeleted="On_Record_Deleted"> </asp:SqlDataSource> <br /> <asp:CheckBox id="CheckBox1" runat="server" autopostback="true" text="Check To Delete Data" /> <br /> <br /> <asp:GridView id="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="OrderID" AutoGenerateDeleteButton="True" AllowPaging="True" PageSize="20" DataSourceID="SqlDataSource1"> <Columns> <asp:BoundField HeaderText="Order ID" DataField="OrderID" /> <asp:BoundField HeaderText="Customer" DataField="CustomerID" /> <asp:BoundField HeaderText="Order Placed" DataField="OrderDate" /> <asp:BoundField HeaderText="Order Shipped" DataField="ShippedDate" /> </Columns> </asp:GridView> <asp:Label id="Label1" runat="server"> </asp:Label> </form> </body> </html>
Available since 2.0