Simple updates using grid and sql data source

The code window shows an sql data source and a grid.
It also has the stored procedure used by the update command.

When I try and update a column it either blanks out all the columns I've not chosen to update or gives me an error message saying:
@original_Code is not a parameter for procedure UpdateAllEq.
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:TestConnectionString %>" SelectCommand="SELECT * FROM [AllEq]" UpdateCommand="UpdateAllEq" OldValuesParameterFormatString="original_{0}" UpdateCommandType="StoredProcedure">
                <DeleteParameters>
                    <asp:Parameter Name="original_Code" Type="String" />
                </DeleteParameters>
                <UpdateParameters>
                    <asp:Parameter Name="Code" Type="String" />
                    <asp:Parameter Name="NAME" Type="String" />
                    <asp:Parameter Name="GEOGN" Type="String" />
                    <asp:Parameter Name="Cov" Type="String" />
                    <asp:Parameter Name="TIME" Type="String" />
                </UpdateParameters>
            </asp:SqlDataSource>
        <asp:GridView ID="GridView1" runat="server" AllowPaging="True" AllowSorting="True"
            AutoGenerateColumns="False" DataKeyNames="Code" DataSourceID="SqlDataSource1"
            PageSize="20">
            <PagerSettings Mode="NextPreviousFirstLast" />
            <Columns>
                <asp:CommandField ShowDeleteButton="True" ShowEditButton="True" />
                <asp:BoundField DataField="Code" HeaderText="Code" ReadOnly="True" SortExpression="Code" />
                <asp:BoundField DataField="NAME" HeaderText="NAME" SortExpression="NAME" />
                <asp:BoundField DataField="GEOGN" HeaderText="GEOGN" SortExpression="GEOGN" />
                <asp:BoundField DataField="COV" HeaderText="COV" SortExpression="COV" />
                <asp:BoundField DataField="TIME" HeaderText="TIME" SortExpression="TIME" />
            </Columns>
        </asp:GridView>
        <asp:DetailsView ID="DetailsView1" runat="server" AllowPaging="True" AutoGenerateRows="False"
            DataKeyNames="Code" DataSourceID="SqlDataSource1" Height="50px" Width="125px">
            <Fields>
                <asp:BoundField DataField="Code" HeaderText="Code" ReadOnly="True" SortExpression="Code" />
                <asp:BoundField DataField="NAME" HeaderText="NAME" SortExpression="NAME" />
                <asp:BoundField DataField="GEOGN" HeaderText="GEOGN" SortExpression="GEOGN" />
                <asp:BoundField DataField="COV" HeaderText="COV" SortExpression="COV" />
                <asp:BoundField DataField="TIME" HeaderText="TIME" SortExpression="TIME" />
            </Fields>
        </asp:DetailsView>

------------Stored Procedure
ALTER PROCEDURE [dbo].[UpdateAllEq]
(
@Code varchar(6) ,
@Name varchar(255),
@GEOGN varchar(255),
@Cov varchar(255),
@TIME varchar(255))

AS
UPDATE [AllEq] 
SET [NAME] = @NAME, 
[GEOGN] = @GEOGN, 
Cov = @Cov, 
[TIME] = @TIME
WHERE [Code] = @Code

Open in new window

AlHal2Asked:
Who is Participating?
 
AlHal2Connect With a Mentor Author Commented:
Thanks for this.  Would you be able to make it called stored procedures for the select and update statements?  I don't have any code for inserts or deletes, but could add some if necessary.

Raising points to 300
0
 
AlHal2Author Commented:
The main thing is that I want to know exactly what SQL was passed to the database.
0
 
Kumaraswamy RCommented:
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:TestConnectionString %>" SelectCommand="SELECT * FROM [AllEq]" UpdateCommand="UpdateAllEq" OldValuesParameterFormatString="original_{0}" <UpdateCommandType="StoredProcedure">
             
                <UpdateParameters>
                    <asp:Parameter Name="Code" Type="String" />
                    <asp:Parameter Name="NAME" Type="String" />
                    <asp:Parameter Name="GEOGN" Type="String" />
                    <asp:Parameter Name="Cov" Type="String" />
                    <asp:Parameter Name="TIME" Type="String" />
                </UpdateParameters>
            </asp:SqlDataSource>

        <asp:GridView ID="GridView1" runat="server" AllowPaging="True" AllowSorting="True"
            AutoGenerateColumns="False" DataKeyNames="Code" DataSourceID="SqlDataSource1"
            PageSize="20">
            <PagerSettings Mode="NextPreviousFirstLast" />
            <Columns>
                <asp:CommandField ShowDeleteButton="True" ShowEditButton="True" />
                <asp:BoundField DataField="Code" HeaderText="Code" ReadOnly="True" SortExpression="Code" />
                <asp:BoundField DataField="NAME" HeaderText="NAME" SortExpression="NAME" />
                <asp:BoundField DataField="GEOGN" HeaderText="GEOGN" SortExpression="GEOGN" />
                <asp:BoundField DataField="COV" HeaderText="COV" SortExpression="COV" />
                <asp:BoundField DataField="TIME" HeaderText="TIME" SortExpression="TIME" />
            </Columns>
        </asp:GridView>
        <asp:DetailsView ID="DetailsView1" runat="server" AllowPaging="True" AutoGenerateRows="False"
            DataKeyNames="Code" DataSourceID="SqlDataSource1" Height="50px" Width="125px">
            <Fields>
                <asp:BoundField DataField="Code" HeaderText="Code" ReadOnly="True" SortExpression="Code" />
                <asp:BoundField DataField="NAME" HeaderText="NAME" SortExpression="NAME" />
                <asp:BoundField DataField="GEOGN" HeaderText="GEOGN" SortExpression="GEOGN" />
                <asp:BoundField DataField="COV" HeaderText="COV" SortExpression="COV" />
                <asp:BoundField DataField="TIME" HeaderText="TIME" SortExpression="TIME" />
            </Fields>
        </asp:DetailsView>

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.