java中有date和datetime,mysql中也有date和datetime,這里我們來說說mysql中的date和datetime。
成都創(chuàng)新互聯(lián)長期為上1000家客戶提供的網(wǎng)站建設服務,團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為嘉峪關(guān)企業(yè)提供專業(yè)的網(wǎng)站設計制作、成都網(wǎng)站制作,嘉峪關(guān)網(wǎng)站改版等技術(shù)服務。擁有十載豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
1 mysql中的date和datetime
1.1 DATETIME
類型可用于需要同時包含日期和時間信息的值。MySQL 以:
‘YYYY-MM-DD HH:MM:SS’
格式檢索與顯示 DATETIME 類型。支持的范圍是:
‘1000-01-01 00:00:00’
到
‘9999-12-31 23:59:59’。
(“支持”的含義是,盡管更早的值可能工作,但不能保證他們均可以。)
1.2 DATE
類型可用于需要一個日期值而不需要時間部分時。MySQL 以
‘YYYY-MM-DD’
格式檢索與顯示DATE值。支持的范圍則是
‘1000-01-01’
到
‘9999-12-31’。
2 與java數(shù)據(jù)的交互
能看出來mysql中的date和datetime區(qū)別還是挺大的,date沒有保存時間。但是java中的date(java.util.Date)記錄的還是挺細的,日期和時間都可以記下來,那么現(xiàn)在問題來了,如果想在mysql中存儲日期和時間,也就是用datetime,而在數(shù)據(jù)中應該如何對應呢?
我使用hibernate測了一下,發(fā)現(xiàn)當把mysql數(shù)據(jù)庫中設置了datetime,反向工程生成的hbm.xml文件中,使用的是timestamp,如下:
property name="Publishdate" column="publishdate" type="timestamp" not-null="false" length="10" /1
反向生成java的pojo時,生成的還是Date。
由此可見對于mysql中datetime,與java中的date,如果要使二者正確交互,中間要使用timestamp。
如果要在JAVA中直接插入MySql的datetime類型,則可以使用:
Date date = new Date();
Timestamp timeStamp = new Timestamp(date.getTime());12
再用setTimestamp()設置數(shù)據(jù)庫中的“日期+時間”。
這樣放入數(shù)據(jù)庫的就是“yyyy-mm-dd hh:mm:ss”格式的數(shù)據(jù)。
注意,mysql中如果使用date而不是datetime是保存不下“日期+時間”的,只能保存“時間”。
插入數(shù)據(jù)庫的方法。如下參考:
1.首先,打開SQLserver管理系統(tǒng)工具,使用數(shù)據(jù)庫帳號登錄到數(shù)據(jù)管理系統(tǒng)。
2.輸入后,單擊數(shù)據(jù)庫文件副本前面的+號。
3.然后右擊數(shù)據(jù)庫文件夾,選擇“新知識數(shù)據(jù)庫”。
4.然后創(chuàng)建一個名為test的數(shù)據(jù)表。
5.建立完成后,在下面的編輯器中輸入下圖中的代碼,然后單擊run。
6.運行之后,您可以看到測試表插入了一個空記錄,這樣就完成了。如下圖所示。
MySQL是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng),由瑞典 MySQL AB 公司開發(fā),目前屬于 Oracle 公司。、
向mysql插入指定時間步驟有:
1:mysql在插入時間的時候 要進行格式轉(zhuǎn)換
例如: insert into users(birth) values(STR_TO_DATE('" + alarmDefi.getEndTime()+ "','%Y-%m-%d %k:%i:%s')) ;
這樣就可插入:年-月-日 時:分:秒
你好啊。我又來了 NOW()函數(shù)以`'YYYY-MM-DD HH:MM:SS'返回當前的日期時間,可以直接存到DATETIME字段中。
CURDATE()以’YYYY-MM-DD’的格式返回今天的日期,可以直接存到DATE字段中。
CURTIME()以’HH:MM:SS’的格式返回當前的時間,可以直接存到TIME字段中。
例:insert into tablename (fieldname) values (now())