首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >eclipse中的Sql更新查询

问eclipse中的Sql更新查询
EN

Stack Overflow用户
提问于 2018-01-18 05:12:25
回答 1查看 1.4K关注 0票数 0

我的问题是关于使用MySQL在eclipse中显示的更新查询,该查询是从以下代码中收到的

这是我的数据库:

我正尝试在eclipse上执行下一次更新查询,但遇到了问题

代码语言:javascript
复制
 public static void update_Payment(String month,int number) {
    String sqlupdate = "UPDATE tenant SET month=?  WHERE appartmentnum =? ";

    try {
        PreparedStatement pst = connect.prepareStatement(sqlupdate);
        pst.setInt(1, 4);
        pst.setInt(2, 1);
        pst.executeUpdate();
    } catch (SQLException var2) {
        var2.printStackTrace();
    }

}

我知道我的数据库中没有列名称month,我只想从用户那里接收月份的名称,例如

当我将列名从month更改为april或jan时,此方法工作正常

thx请求帮助

EN

回答 1

Stack Overflow用户

发布于 2018-01-18 05:22:15

由于您要将此SQL语句构建为字符串,因此请尝试以下操作:

代码语言:javascript
复制
 public static void update_Payment(String month,int number) {
    String sqlupdate = "UPDATE tenant SET " + month + "=? WHERE appartmentnum =? ";

    try {
        PreparedStatement pst = connect.prepareStatement(sqlupdate);
        pst.setInt(1, 4);
        pst.setInt(2, 1);
        pst.executeUpdate();
    } catch (SQLException var2) {
        var2.printStackTrace();
    }

}

你仍然有一个问题:

您需要一种方法来为?传递适当的值。没有默认的方法将月份转换为月份数字。你可以在代码或db中编写一个解决方案,例如Get month number from month name

当然,只需添加另一个参数并传入表示月份的适当整数,就像您对apt#所做的那样

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48310064

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档