Часть 1, код ниже - это функция из другого класса.не может обновить базу данных без ошибок
public static void updateData(string SqlCommand)
{
string strConString = ConfigurationManager.ConnectionStrings["SOConnectionString"].ConnectionString;
OleDbConnection conn = new OleDbConnection(strConString);
OleDbCommand cmd = new OleDbCommand(SqlCommand, conn);
try {
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
}
catch (Exception e)
{
conn.Close();
}
}
вот код для вызова функции выше.
protected void ImageButton2_Click(object sender, ImageClickEventArgs e)
{
string ID = txtID.Text;
string password = txtPassword.Text;
string name = txtName.Text;
string position = txtPosition.Text;
int status = 1;
string createOn = validate.GetTimestamp(DateTime.Now); ;
string accessRight;
if (RadioButton1.Checked)
accessRight = "Administrator";
else
accessRight = "Non-administrator";
// ClientScript.RegisterStartupScript(this.GetType(), "yourMessage", "alert('" + ID + "ha " + password + "ha " + status + "ha " + accessRight + "ha " + position + "ha " + name + "ha " + createOn + "');", true);
string type = (String)Session["type"];
if (type == "update")
{
string sqlcommand = "UPDATE USERMASTER SET USERPOSITION='"+position+"',USERNAME='"+name+"' WHERE (USERID ='"+ID+"')";
readdata.updateData(sqlcommand);
Response.Redirect("UserView.aspx");
}
else {
if (validate.verifyID(ID) == true)
{
if (validate.verifyLang((String)Session["Lang"]) == true)
lblIDError.Text = "User ID already exist!";
else
lblIDError.Text = "用户账号已存在!";
}
else{
string sqlcommand = "INSERT INTO USERMASTER (USERID,USERPWD,USERNAME,USERPOSITION,USERACCESSRIGHTS,USERSTATUS,CREATEDATE,CREATEUSERID) VALUES ('" + ID + "','" + password + "','" + name + "','" + position + "','" + accessRight + "','" + status + "', TO_DATE('" + createOn + "'),'" + (string)Session["UserID"] + "')";
readdata.updateData(sqlcommand);
Response.Redirect("UserView.aspx");
}
}
}
часть 1 код работает хорошо для INSERT, но когда приходят к UPDATE, он не показывает мне ошибку, а также оленья кожа UPDATE данных. кто-нибудь знает, что не так с моим кодом?
Я не знаю, если вам нужны кавычки видения вашего удостоверения личности, поскольку они являются числовыми? также вручную вставляя первичные ключи (что, я думаю, ваш userId, но не знаю точно, потому что я не знаю, как выглядит ваша таблица) - это плохая практика, вы должны использовать столбец автоматического увеличения, а не –
, возможно, 'type! =" update "' :) –
Что такое значение id u для обновления? существуют ли в db? – tharif