sqltimestamp比較
Ⅰ sql中如何判斷時間大小呢 急!
時間要有單引號的,不然實際執行的是算術運算
select * From Book where EditionDate>(2001-1-1) 等同於
select * From Book where EditionDate>1999
1999可以隱式轉換為日期,所以有結果。
正確寫法是
select * From Book where EditionDate>'2001-1-1' and EditionDate<'2008-12-31'
Ⅱ mysql 中 datetime和 timestamp的區別
DATETIME、DATE和TIMESTAMP,除了DATE用來表示一個不帶時分秒的是日期,另外兩個都帶時分秒。TIMESTAMP還可以精確到毫秒。
TIMESTAMP列必須有默認值,默認值可以為「0000-00-00 00:00:00」,但不能為null。
TIMESTAMP列不可以設置值,只能由資料庫自動去修改。
一個表可以存在多個TIMESTAMP列,但只有一個列會根據數據更新而改變為資料庫系統當前值。因此,一個表中有多個TIMESTAMP列是沒有意義,實際上一個表只設定一個TIMESTAMP列。
Ⅲ 資料庫中DATETIME,DATE和TIMESTAMP類型 的區別
當你需要同時包含日期和時間信息的值時則使用DATETIME類型。MySQL以'YYYY-MM-DD HH:MM:SS'格式檢索和顯示DATETIME值。支持的范圍為'1000-01-01 00:00:00'到'9999-12-31 23:59:59'。(「支持」表示盡管先前的值可能工作,但沒有保證)。
當你只需要日期值而不需要時間部分時應使用DATE類型。MySQL用'YYYY-MM-DD'格式檢索和顯示DATE值。支持的范圍是'1000-01-01'到 '9999-12-31'。
TIMESTAMP列類型的屬性不固定,取決於MySQL版本和伺服器運行的SQL模式。這些屬性將在本節後面描述。
可以使用任何常見格式指定DATETIME、DATE和TIMESTAMP值:
'YYYY-MM-DD HH:MM:SS'或'YY-MM-DD HH:MM:SS'格式的字元串。允許「不嚴格」語法:任何標點符都可以用做日期部分或時間部分之間的間割符。例如,'98-12-31 11:30:45'、'98.12.31 11+30+45'、'98/12/31 11*30*45'和'98@12@31 11^30^45'是等價的。
'YYYY-MM-DD'或'YY-MM-DD'格式的字元串。這里也允許使用「不嚴格的」語法。例如,'98-12-31'、'98.12.31'、'98/12/31'和'98@12@31'是等價的。
'YYYYMMDDHHMMSS'或'YYMMDDHHMMSS'格式的沒有間割符的字元串,假定字元串對於日期類型是有意義的。例如,'19970523091528'和'970523091528'被解釋為'1997-05-23 09:15:28',但'971122129015'是不合法的(它有一個沒有意義的分鍾部分),將變為'0000-00-00 00:00:00'。
'YYYYMMDD'或'YYMMDD'格式的沒有間割符的字元串,假定字元串對於日期類型是有意義的。例如,'19970523'和'970523'被解釋為 '1997-05-23',但'971332'是不合法的(它有一個沒有意義的月和日部分),將變為'0000-00-00'。
Ⅳ java.sql.Date,java.sql.Time和java.sql.Timestamp什麼區別
【父類】java.util.Date日期格式為:年月日時分秒
【子類】java.sql.Date日期格式為:年月日[只存儲日期數據不存儲時間數據]
【子類】java.sql.Time日期格式為:時分秒
【子類】java.sql.Timestamp日期格式為:年月日時分秒納秒(毫微秒)
針對不同的資料庫選用不同的日期類型
·Oracle的Date類型,只需要年月日,選擇使用java.sql.Date類型
·MS Sqlserver資料庫的DateTime類型,需要年月日時分秒,選擇java.sql.Timestamp類型
------------------------------------------
四種對象內部均使用系統時間作為標准數據
·系統時間:自 1970 年 1 月 1 日 00:00:00 GMT 以來的毫秒數,即格林尼治標准時間GMT) ·本地時間:根據時區不同列印出來的時間[當時區為GMT+0時,系統時間與本地時間相同]我們使用的是以本地時間為參考標準的
//java.util.Date 轉換成 java.sql.Date 格式
try{
SimpleDateFormat DateFormate = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
java.util.Date date1 = DateFormate.parse("2011-5-31 14:40:50");
java.sql.Date sqlDate = new java.sql.Date(date1.getTime());
System.out.println(DateFormate.format(sqlDate));
}catch (Exception ex) {
System.out.println(ex.getMessage());
}
//java.sql.Date 轉換成 java.util.Date 格式
java.sql.Date sqlDate1=java.sql.Date.valueOf("2005-12-12");
java.util.Date utilDate1=new java.util.Date(sqlDate1.getTime());
System.out.println("java.sql.Date 轉換成 java.util.Date 格式:"+f.format(utilDate1));
//java.util.Date轉換java.sql.Timestamp
new java.sql.Timestamp(new java.util.Date().getTime());//此處IDE報錯
//java.util.Date轉換java.sql.Time
new java.sql.Time(new java.util.Date().getTime());
Timestamp timestamp = new Timestamp(System.currentTimeMillis());
我們可以使用DateFormat處理字元串來定義時間日期的格式
註:String都是先轉換為java.util.Date,然後再轉換成所需的格式