首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用JDBC在MySQL中添加“time”类型?

如何使用JDBC在MySQL中添加“time”类型?
EN

Stack Overflow用户
提问于 2012-11-04 15:24:37
回答 3查看 347关注 0票数 1

我知道如何“设置”它,但是我如何添加它呢?比如..。

代码语言:javascript
复制
    // Add 1 minute to the current 'time' object
    try {
        Connection con = DriverManager.getConnection(url, user, password);
        String sql = "UPDATE Table "
                   + "SET 'Time Field' = 'Time Field' + ? "
                   + "WHERE 'User Column' = 'Random Name'";
        PreparedStatement statement = con.prepareStatement(sql);
        statement.setTime(0, new Time(60000));
    } catch (SQLException e) {
        e.printStackTrace();
    }

我确信我必须使用"ADDITEM(expr1,expr2)“函数,但是我到底该怎么做呢?我觉得这并不像在我的字符串中直接输入那么简单。

EN

回答 3

Stack Overflow用户

发布于 2012-11-04 15:31:39

不应该传入Java日期/时间:应该使用SQL time/date文本或MySQL时间/日期函数。无论哪种方式,您都不再需要在预准备语句中使用"time“变量:

代码语言:javascript
复制
// EXAMPLE: add 2 hours to current time
String sql = 
  "UPDATE Table " + 
  "SET 'Time Field' = 'Time Field' + DATE_ADD(NOW(), INTERVAL 2 HOUR) " +
  "WHERE 'User Column' = 'Random Name'";

以下是可用的MySql日期/时间函数:

票数 1
EN

Stack Overflow用户

发布于 2012-11-04 15:54:55

票数 0
EN

Stack Overflow用户

发布于 2012-11-04 15:36:22

ADDTIME()函数的使用方法如下:

代码语言:javascript
复制
         String sql = "UPDATE Table "
               + "SET 'Time Field' = ADDTIME('Time Field', ?) "
               + "WHERE 'User Column' = 'Random Name'";

然后使用所需的值设置参数值。

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

https://stackoverflow.com/questions/13216868

复制
相关文章

相似问题

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