亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

如何比較java中的Date與mysql中datetime類型的字段?

瀏覽:80日期:2024-01-01 09:40:27

問題描述

現在mysql數據庫db有一張表test(id bigint,createTime datetime),部分表數據如下:

idcreateTime12017-01-02 10:34:3322017-01-05 11:35:3132017-01-07 13:20:0142017-01-13 10:06:3352017-01-15 11:22:5362017-01-20 10:34:3372017-01-25 10:46:25

現在要通過java代碼拼接sql字符串的形式查出所有創建時間在2017-01-15 00:00:00之后的數據。

限定 : 通過以下兩種方式查詢

第一種 :拼接字符串

String sql = 'select id,createTime from db.test where createTime > ' + javaCreateTime

第二種 : 預編譯的形式傳入查詢參數:

String sql = 'select id,createTime from db.test where createTime > ?'

請問 : 第一種方式的javaCreateTime應該怎么傳?第二種預編譯的方式參數又應該怎么傳?

從網上找到解決的辦法了:

第一種傳入:

String sql = 'select id,createTime from db.test where createTime > ’2017-01-15 00:00:00’ '

第二種

String sql = 'select id,createTime from db.test where createTime > ? ';PreparedStatement preStat = connection.prepareStatement(sql);preStat.setString(1, ’2017-01-15 00:00:00’);ResultSet rs = preStat.executeQuery();

以上兩種方式都是直接傳入字符串,而且都是yyyy-MM-dd HH:mm:ss。請問為什么可以達到目的?mysql會自動將字符串轉化為datetime?。其底層運行機制到底是什么原因呢?

問題解答

回答1:

mysql會自動將字符串轉化為datetime?

這要看你將它們加入表的時候,它們本身的datatype是不是datetime

又或者是它們在mysql的column可能已經set成datetime

你可以打 desc test;查看

另外 2017-01-15 00:00:00 本身的格式已經是 datetime.

標簽: java
相關文章:
主站蜘蛛池模板: 亚洲欧洲精品国产二码 | 自拍视频在线观看视频精品 | 日本免费看片在线播放 | 国产黄在线观看免费观看不卡 | 亚洲午夜18 | 久久精品免费一区二区视 | 日本精品中文字幕在线播放 | 男女啪啪成人免费网站 | 国产精品v欧美精品∨日韩 国产精品www | 嫩草网站永久入口 | 视频一区二区三区自拍 | 欧美高清一级 | 麻豆视传媒短视频网站链接 | 亚洲精品高清在线观看 | 国产一级自拍 | 99re热久久这里只有精品6 | 欧美一级一一特黄 | 亚洲精品资源在线 | 国产美女福利视频 | 久久蜜桃亚洲一区二区 | 亚洲成人一区二区 | 18欧美乱大交hd88av | 三级国产在线观看 | 亚洲国产成a人v在线观看 | 毛片大全 | 免费国产草莓视频在线观看黄 | 久久精品国产99国产精2020丨 | 在线观看亚洲一区 | 看片在线观看 | jul724青木玲中文字幕 | 日韩特级片 | 好大好爽国产美女h福利视频 | 日本高清视频www夜色资源 | 看一级毛片国产一级毛片 | 青草视频在线免费观看 | 一级毛片国产 | 中文国产成人精品久久96 | 在线观看网站黄 | 日韩精品中文字幕一区二区三区 | 三上悠亚magnet| 欧美日韩一区二区三区高清不卡 |