Hi,
I'm trying to update the user information from textbox
when the user click view my account information in the main page it will take them to another page which will display their account information they will be able to change everything excpet for the username becouse it is primary key, I don't have gridview I just want it to update the data in the database
here is what I did
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:StringConnection %>" DeleteCommand="DELETE FROM [accountInfo] WHERE [username] = @username" InsertCommand="INSERT INTO [accountInfo] ([username], [firstName], [lastName], [DOB], [email], [password], [creditCardNameHolder], [creditCardNumber], [country], [city], [zipCode], [mobileNo]) VALUES (@username, @firstName, @lastName, @DOB, @email, @password, @creditCardNameHolder, @creditCardNumber, @country, @city, @zipCode, @mobileNo)" ProviderName="<%$ ConnectionStrings:FlightConnection.ProviderName %>" SelectCommand="SELECT * FROM [accountInfo]" UpdateCommand="UPDATE [accountInfo] SET [firstName] = @firstName, [lastName] = @lastName, [DOB] = @DOB, [email] = @email, [password] = @password, [creditCardNameHolder] = @creditCardNameHolder, [creditCardNumber] = @creditCardNumber, [country] = @country, [city] = @city, [zipCode] = @zipCode, [mobileNo] = @mobileNo WHERE [username] = @username">
<DeleteParameters>
<asp:Parameter Name="username" Type="String" />
</DeleteParameters>
<InsertParameters>
<asp:Parameter Name="username" Type="String" />
<asp:Parameter Name="firstName" Type="String" />
<asp:Parameter Name="lastName" Type="String" />
<asp:Parameter Name="DOB" Type="String" />
<asp:Parameter Name="email" Type="String" />
<asp:Parameter Name="password" Type="String" />
<asp:Parameter Name="creditCardNameHolder" Type="String" />
<asp:Parameter Name="creditCardNumber" Type="String" />
<asp:Parameter Name="country" Type="String" />
<asp:Parameter Name="city" Type="String" />
<asp:Parameter Name="zipCode" Type="String" />
<asp:Parameter Name="mobileNo" Type="String" />
</InsertParameters>
<UpdateParameters>
<asp:Parameter Name="firstName" Type="String" />
<asp:Parameter Name="lastName" Type="String" />
<asp:Parameter Name="DOB" Type="String" />
<asp:Parameter Name="email" Type="String" />
<asp:Parameter Name="password" Type="String" />
<asp:Parameter Name="creditCardNameHolder" Type="String" />
<asp:Parameter Name="creditCardNumber" Type="String" />
<asp:Parameter Name="country" Type="String" />
<asp:Parameter Name="city" Type="String" />
<asp:Parameter Name="zipCode" Type="String" />
<asp:Parameter Name="mobileNo" Type="String" />
<asp:Parameter Name="username" Type="String" />
</UpdateParameters>
</asp:SqlDataSource>
...
protected void btnUpdate_Click(object sender, EventArgs e)
{
string conString = ConfigurationManager.ConnectionStrings["StringConnection"].ConnectionString;
SqlCeConnection con = new SqlCeConnection(conString);
string fName = TextBoxFName.Text.Trim();
string lName = TextBoxLName.Text.Trim();
string city =TextBoxCity.Text.Trim();
string email = TextBoxEmail.Text.Trim();
string pass =TextBoxPassword.Text.Trim();
string username = lblUserName.Text.Trim();
string nameCC = TextBoxNameCreditCard.Text.Trim();
string ccNo= TextBoxCrediCardNo.Text.Trim();
string country = TextBoxCountry.Text.Trim();
string zipCode = TextBoxZipCpde.Text.Trim();
string mobileNo = TextBoxMobileNo.Text.Trim();
string sql = "UPDATE accountInfo SET firstName = @fName, lastName = @lName, email = @email, password = @pass, creditCardNameHolder = @nameCC, [creditCardNumber] = @ccNo, city = @city, country = @country, zipCode = @zipCode, mobileNo = @mobileNo WHERE username =@username";
SqlCeCommand Updatecmd = new SqlCeCommand(sql, con);
Updatecmd.Parameters.AddWithValue("@fName", fName);
Updatecmd.Parameters.Add("@username", SqlDbType.NChar);
Updatecmd.Parameters.AddWithValue("@lName", lName);
Updatecmd.Parameters.AddWithValue("@email", email);
Updatecmd.Parameters.AddWithValue("@city", city);
Updatecmd.Parameters.AddWithValue("@pass", pass);
Updatecmd.Parameters.AddWithValue("@nameCC", nameCC);
Updatecmd.Parameters.AddWithValue("@ccNo", ccNo);
Updatecmd.Parameters.AddWithValue("@country", country);
Updatecmd.Parameters.AddWithValue("@zipCode", zipCode);
Updatecmd.Parameters.AddWithValue("@mobileNo", mobileNo);
// Updatecmd.Parameters.Add("@fName",SqlDbType.NVarChar).Value = fName;
try
{
con.Open();
Updatecmd.ExecuteNonQuery();
con.Close();
}
catch (Exception ex)
{
}
}
but I don't know why it not working