chump2877
09-07-2007, 12:36 PM
So I've popluated a GridView control with an SQL data source, but I can only update the records if "use optimistic concurrency" is turned off...If that feature is on, the records are not updated when you hit the update button for a given row in the GridView...
This the relevant .aspx page code:
<asp:SqlDataSourceID="SqlDataSource1"runat="server"ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"DeleteCommand="DELETE FROM [Customers] WHERE [CustomerID] = @original_CustomerID AND [CompanyName] = @original_CompanyName AND [ContactName] = @original_ContactName AND [ContactTitle] = @original_ContactTitle AND [Address] = @original_Address AND [City] = @original_City AND [Region] = @original_Region AND [PostalCode] = @original_PostalCode AND [Country] = @original_Country AND [Phone] = @original_Phone AND [Fax] = @original_Fax"InsertCommand="INSERT INTO [Customers] ([CustomerID], [CompanyName], [ContactName], [ContactTitle], [Address], [City], [Region], [PostalCode], [Country], [Phone], [Fax]) VALUES (@CustomerID, @CompanyName, @ContactName, @ContactTitle, @Address, @City, @Region, @PostalCode, @Country, @Phone, @Fax)"SelectCommand="SELECT * FROM [Customers]"UpdateCommand="UPDATE [Customers] SET [CompanyName] = @CompanyName, [ContactName] = @ContactName, [ContactTitle] = @ContactTitle, [Address] = @Address, [City] = @City, [Region] = @Region, [PostalCode] = @PostalCode, [Country] = @Country, [Phone] = @Phone, [Fax] = @Fax WHERE [CustomerID] = @original_CustomerID AND [CompanyName] = @original_CompanyName AND [ContactName] = @original_ContactName AND [ContactTitle] = @original_ContactTitle AND [Address] = @original_Address AND [City] = @original_City AND [Region] = @original_Region AND [PostalCode] = @original_PostalCode AND [Country] = @original_Country AND [Phone] = @original_Phone AND [Fax] = @original_Fax"ConflictDetection="CompareAllValues"OldValuesParameterFormatString="original_{0}">
<DeleteParameters>
<asp:ParameterName="original_CustomerID"Type="String"/>
<asp:ParameterName="original_CompanyName"Type="String"/>
<asp:ParameterName="original_ContactName"Type="String"/>
<asp:ParameterName="original_ContactTitle"Type="String"/>
<asp:ParameterName="original_Address"Type="String"/>
<asp:ParameterName="original_City"Type="String"/>
<asp:ParameterName="original_Region"Type="String"/>
<asp:ParameterName="original_PostalCode"Type="String"/>
<asp:ParameterName="original_Country"Type="String"/>
<asp:ParameterName="original_Phone"Type="String"/>
<asp:ParameterName="original_Fax"Type="String"/>
</DeleteParameters>
<UpdateParameters>
<asp:ParameterName="CompanyName"Type="String"/>
<asp:ParameterName="ContactName"Type="String"/>
<asp:ParameterName="ContactTitle"Type="String"/>
<asp:ParameterName="Address"Type="String"/>
<asp:ParameterName="City"Type="String"/>
<asp:ParameterName="Region"Type="String"/>
<asp:ParameterName="PostalCode"Type="String"/>
<asp:ParameterName="Country"Type="String"/>
<asp:ParameterName="Phone"Type="String"/>
<asp:ParameterName="Fax"Type="String"/>
<asp:ParameterName="original_CustomerID"Type="String"/>
<asp:ParameterName="original_CompanyName"Type="String"/>
<asp:ParameterName="original_ContactName"Type="String"/>
<asp:ParameterName="original_ContactTitle"Type="String"/>
<asp:ParameterName="original_Address"Type="String"/>
<asp:ParameterName="original_City"Type="String"/>
<asp:ParameterName="original_Region"Type="String"/>
<asp:ParameterName="original_PostalCode"Type="String"/>
<asp:ParameterName="original_Country"Type="String"/>
<asp:ParameterName="original_Phone"Type="String"/>
<asp:ParameterName="original_Fax"Type="String"/>
</UpdateParameters>
<InsertParameters>
<asp:ParameterName="CustomerID"Type="String"/>
<asp:ParameterName="CompanyName"Type="String"/>
<asp:ParameterName="ContactName"Type="String"/>
<asp:ParameterName="ContactTitle"Type="String"/>
<asp:ParameterName="Address"Type="String"/>
<asp:ParameterName="City"Type="String"/>
<asp:ParameterName="Region"Type="String"/>
<asp:ParameterName="PostalCode"Type="String"/>
<asp:ParameterName="Country"Type="String"/>
<asp:ParameterName="Phone"Type="String"/>
<asp:ParameterName="Fax"Type="String"/>
</InsertParameters>
</asp:SqlDataSource>
<asp:GridViewID="GridView1"runat="server"AllowPaging="True"AllowSorting="True"AutoGenerateColumns="False"BackColor="#DEBA84"BorderColor="#DEBA84"BorderStyle="None"BorderWidth="1px"CellPadding="3"CellSpacing="2"DataKeyNames="CustomerID"DataSourceID="SqlDataSource1">
<FooterStyleBackColor="#F7DFB5"ForeColor="#8C4510"/>
<Columns>
<asp:CommandFieldButtonType="Button"ShowDeleteButton="True"ShowEditButton="True"/>
<asp:BoundFieldDataField="CustomerID"HeaderText="CustomerID"ReadOnly="True"SortExpression="CustomerID"/>
<asp:BoundFieldDataField="CompanyName"HeaderText="CompanyName"SortExpression="CompanyName"/>
<asp:BoundFieldDataField="ContactName"HeaderText="ContactName"SortExpression="ContactName"/>
<asp:BoundFieldDataField="ContactTitle"HeaderText="ContactTitle"SortExpression="ContactTitle"/>
<asp:BoundFieldDataField="Address"HeaderText="Address"SortExpression="Address"/>
<asp:BoundFieldDataField="City"HeaderText="City"SortExpression="City"/>
<asp:BoundFieldDataField="Region"HeaderText="Region"SortExpression="Region"/>
<asp:BoundFieldDataField="PostalCode"HeaderText="PostalCode"SortExpression="PostalCode"/>
<asp:BoundFieldDataField="Country"HeaderText="Country"SortExpression="Country"/>
<asp:BoundFieldDataField="Phone"HeaderText="Phone"SortExpression="Phone"/>
<asp:BoundFieldDataField="Fax"HeaderText="Fax"SortExpression="Fax"/>
</Columns>
<RowStyle BackColor="#FFF7E7" ForeColor="#8C4510" />
<SelectedRowStyle BackColor="#738A9C" Font-Bold="True" ForeColor="White" />
<PagerStyle ForeColor="#8C4510" HorizontalAlign="Center" />
<HeaderStyle BackColor="#A55129" Font-Bold="True" ForeColor="White" />
</asp:GridView>
I was doing this in VS2005's built in development server, so I wondered if maybe I moved the project onto an IIS server, i would have different results...I tried the page on the server, but this time the page wouldn;t even render and I got the following error in my web browser:
Server Error in '/SQLTesting' Application.
Cannot open database "Northwind" requested by the login. The login failed.
Login failed for user 'RANDY\ASPNET'.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Data.SqlClient.SqlException: Cannot open database "Northwind" requested by the login. The login failed.
Login failed for user 'RANDY\ASPNET'.
Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace:
[SqlException (0x80131904): Cannot open database "Northwind" requested by the login. The login failed.Login failed for user 'RANDY\ASPNET'.]......
Thank you for any help.
This the relevant .aspx page code:
<asp:SqlDataSourceID="SqlDataSource1"runat="server"ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"DeleteCommand="DELETE FROM [Customers] WHERE [CustomerID] = @original_CustomerID AND [CompanyName] = @original_CompanyName AND [ContactName] = @original_ContactName AND [ContactTitle] = @original_ContactTitle AND [Address] = @original_Address AND [City] = @original_City AND [Region] = @original_Region AND [PostalCode] = @original_PostalCode AND [Country] = @original_Country AND [Phone] = @original_Phone AND [Fax] = @original_Fax"InsertCommand="INSERT INTO [Customers] ([CustomerID], [CompanyName], [ContactName], [ContactTitle], [Address], [City], [Region], [PostalCode], [Country], [Phone], [Fax]) VALUES (@CustomerID, @CompanyName, @ContactName, @ContactTitle, @Address, @City, @Region, @PostalCode, @Country, @Phone, @Fax)"SelectCommand="SELECT * FROM [Customers]"UpdateCommand="UPDATE [Customers] SET [CompanyName] = @CompanyName, [ContactName] = @ContactName, [ContactTitle] = @ContactTitle, [Address] = @Address, [City] = @City, [Region] = @Region, [PostalCode] = @PostalCode, [Country] = @Country, [Phone] = @Phone, [Fax] = @Fax WHERE [CustomerID] = @original_CustomerID AND [CompanyName] = @original_CompanyName AND [ContactName] = @original_ContactName AND [ContactTitle] = @original_ContactTitle AND [Address] = @original_Address AND [City] = @original_City AND [Region] = @original_Region AND [PostalCode] = @original_PostalCode AND [Country] = @original_Country AND [Phone] = @original_Phone AND [Fax] = @original_Fax"ConflictDetection="CompareAllValues"OldValuesParameterFormatString="original_{0}">
<DeleteParameters>
<asp:ParameterName="original_CustomerID"Type="String"/>
<asp:ParameterName="original_CompanyName"Type="String"/>
<asp:ParameterName="original_ContactName"Type="String"/>
<asp:ParameterName="original_ContactTitle"Type="String"/>
<asp:ParameterName="original_Address"Type="String"/>
<asp:ParameterName="original_City"Type="String"/>
<asp:ParameterName="original_Region"Type="String"/>
<asp:ParameterName="original_PostalCode"Type="String"/>
<asp:ParameterName="original_Country"Type="String"/>
<asp:ParameterName="original_Phone"Type="String"/>
<asp:ParameterName="original_Fax"Type="String"/>
</DeleteParameters>
<UpdateParameters>
<asp:ParameterName="CompanyName"Type="String"/>
<asp:ParameterName="ContactName"Type="String"/>
<asp:ParameterName="ContactTitle"Type="String"/>
<asp:ParameterName="Address"Type="String"/>
<asp:ParameterName="City"Type="String"/>
<asp:ParameterName="Region"Type="String"/>
<asp:ParameterName="PostalCode"Type="String"/>
<asp:ParameterName="Country"Type="String"/>
<asp:ParameterName="Phone"Type="String"/>
<asp:ParameterName="Fax"Type="String"/>
<asp:ParameterName="original_CustomerID"Type="String"/>
<asp:ParameterName="original_CompanyName"Type="String"/>
<asp:ParameterName="original_ContactName"Type="String"/>
<asp:ParameterName="original_ContactTitle"Type="String"/>
<asp:ParameterName="original_Address"Type="String"/>
<asp:ParameterName="original_City"Type="String"/>
<asp:ParameterName="original_Region"Type="String"/>
<asp:ParameterName="original_PostalCode"Type="String"/>
<asp:ParameterName="original_Country"Type="String"/>
<asp:ParameterName="original_Phone"Type="String"/>
<asp:ParameterName="original_Fax"Type="String"/>
</UpdateParameters>
<InsertParameters>
<asp:ParameterName="CustomerID"Type="String"/>
<asp:ParameterName="CompanyName"Type="String"/>
<asp:ParameterName="ContactName"Type="String"/>
<asp:ParameterName="ContactTitle"Type="String"/>
<asp:ParameterName="Address"Type="String"/>
<asp:ParameterName="City"Type="String"/>
<asp:ParameterName="Region"Type="String"/>
<asp:ParameterName="PostalCode"Type="String"/>
<asp:ParameterName="Country"Type="String"/>
<asp:ParameterName="Phone"Type="String"/>
<asp:ParameterName="Fax"Type="String"/>
</InsertParameters>
</asp:SqlDataSource>
<asp:GridViewID="GridView1"runat="server"AllowPaging="True"AllowSorting="True"AutoGenerateColumns="False"BackColor="#DEBA84"BorderColor="#DEBA84"BorderStyle="None"BorderWidth="1px"CellPadding="3"CellSpacing="2"DataKeyNames="CustomerID"DataSourceID="SqlDataSource1">
<FooterStyleBackColor="#F7DFB5"ForeColor="#8C4510"/>
<Columns>
<asp:CommandFieldButtonType="Button"ShowDeleteButton="True"ShowEditButton="True"/>
<asp:BoundFieldDataField="CustomerID"HeaderText="CustomerID"ReadOnly="True"SortExpression="CustomerID"/>
<asp:BoundFieldDataField="CompanyName"HeaderText="CompanyName"SortExpression="CompanyName"/>
<asp:BoundFieldDataField="ContactName"HeaderText="ContactName"SortExpression="ContactName"/>
<asp:BoundFieldDataField="ContactTitle"HeaderText="ContactTitle"SortExpression="ContactTitle"/>
<asp:BoundFieldDataField="Address"HeaderText="Address"SortExpression="Address"/>
<asp:BoundFieldDataField="City"HeaderText="City"SortExpression="City"/>
<asp:BoundFieldDataField="Region"HeaderText="Region"SortExpression="Region"/>
<asp:BoundFieldDataField="PostalCode"HeaderText="PostalCode"SortExpression="PostalCode"/>
<asp:BoundFieldDataField="Country"HeaderText="Country"SortExpression="Country"/>
<asp:BoundFieldDataField="Phone"HeaderText="Phone"SortExpression="Phone"/>
<asp:BoundFieldDataField="Fax"HeaderText="Fax"SortExpression="Fax"/>
</Columns>
<RowStyle BackColor="#FFF7E7" ForeColor="#8C4510" />
<SelectedRowStyle BackColor="#738A9C" Font-Bold="True" ForeColor="White" />
<PagerStyle ForeColor="#8C4510" HorizontalAlign="Center" />
<HeaderStyle BackColor="#A55129" Font-Bold="True" ForeColor="White" />
</asp:GridView>
I was doing this in VS2005's built in development server, so I wondered if maybe I moved the project onto an IIS server, i would have different results...I tried the page on the server, but this time the page wouldn;t even render and I got the following error in my web browser:
Server Error in '/SQLTesting' Application.
Cannot open database "Northwind" requested by the login. The login failed.
Login failed for user 'RANDY\ASPNET'.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Data.SqlClient.SqlException: Cannot open database "Northwind" requested by the login. The login failed.
Login failed for user 'RANDY\ASPNET'.
Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace:
[SqlException (0x80131904): Cannot open database "Northwind" requested by the login. The login failed.Login failed for user 'RANDY\ASPNET'.]......
Thank you for any help.