如何忽略 SQL 更新中的列

我有一个程序可以查看用户模型,如果它们不为空,则将值添加到准备好的更新语句中,如下所示


    PreparedStatement pst = conn.prepareStatement("UPDATE users SET name=?,email=?,pwd=?,avatar=?,sts=?,bio=?,country=? WHERE uuid=?");

    if(this.name != null) pst.setString(1, this.name);

    if(this.email != null) pst.setString(2, this.email);

    if(this.password != null) pst.setString(3, this.password);

    if(this.avatar != null) pst.setString(4, this.avatar);

    if(this.status != null) pst.setString(5, this.status);

    if(this.bio != null) pst.setString(6, this.bio);

    if(this.country != null) pst.setString(7, this.country);

    pst.setString(6, this.id);

我面临的问题是准备好的语句中不能有未定义的字段。我可以将不想更改的字段设置为等于什么?


紫衣仙女
浏览 102回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java