小编Nik*_*ola的帖子

UPDATE语法不适用于所有列

我在这里失去了理智.

我正在尝试实施一个基本的"忘记密码?" 用户输入电子邮件地址以获取新密码的功能.很简单吧?

我的问题是更新数据库,用新密码替换旧密码.我正在使用C#和MS Access.

这是更新代码:

public bool UpdateCustomer(Customer customer){
    try {
        if(con.State == ConnectionState.Closed)
            con.Open();

        string sql = "UPDATE CUSTOMERS SET password=? WHERE userid=?;";

        OleDbCommand cmd = new OleDbCommand(sql, con);
        cmd.Parameters.Add(new OleDbParameters("password", customer.Password));
        cmd.Parameters.Add(new OleDbParameters("userid", customer.UserId));

        cmd.ExecuteNonQuery();

        return true;

    }catch (Exception ex) {

    }finally {
        con.Close();
    }
    return false;
}
Run Code Online (Sandbox Code Playgroud)

客户表包含以下栏:UserId,Name,Email,PasswordCreatedDate.

调试try-catch时会抛出一个异常,说UPDATE语句中存在语法错误.我已经做了一些尝试和错误更换password=?name=?只是为了看它是否会更新,它也INFACT更新客户的名字!

NamePassword列是,据我所看到的,与数据类型相同Text.

可能是什么问题?

c# sql ms-access

1
推荐指数
1
解决办法
52
查看次数

标签 统计

c# ×1

ms-access ×1

sql ×1