如题所述
datetimeåtimestampæ¯åºç°å¨MySQLåSqlServeræ°æ®åºä¸çã
MySQLä¸datetimeåtimestampçåºå«ï¼
(ä¸)èå´ä¸åã
âdatetimeâ 以'YYYY-MM-DD HH:MM:SS'æ ¼å¼æ£ç´¢åæ¾ç¤ºDATETIMEå¼ãæ¯æçèå´ä¸º'1000-01-01 00:00:00'å°'9999-12-31 23:59:59'TIMESTAMPå¼ä¸è½æ©äº1970ææäº2037
(äº)å¨åä¸åã
1ï¼TIMESTAMP
â 4个åèå¨åï¼Time stamp value is stored in 4 bytesï¼
â¡å¼ä»¥UTCæ ¼å¼ä¿åï¼ it stores the number of millisecondsï¼
â¢æ¶åºè½¬å ï¼åå¨æ¶å¯¹å½åçæ¶åºè¿è¡è½¬æ¢ï¼æ£ç´¢æ¶å转æ¢åå½åçæ¶åºã
2ï¼datetime
â 8个åèå¨åï¼8 bytes storageï¼
â¡å®é æ ¼å¼å¨åï¼Just stores what you have stored and retrieves the same thing which you have stored.ï¼
â¢ä¸æ¶åºæ å ³ï¼It has nothing to deal with the TIMEZONE and Conversion.ï¼
注ï¼TIMESTAMPåçæ¾ç¤ºæ ¼å¼ä¸datetimeåç¸åã
SqlServerä¸datetimeåtimestampå¨ä¸ç¨æ³åºå«åºæ¬é½å·®ä¸å¤ã
datetime ï¼
SqlServerä¸ç¨ä¸¤ä¸ª 4 åèçæ´æ°å é¨åå¨ datetime æ°æ®ç±»åçå¼ã第ä¸ä¸ª 4 åèåå¨ base dateï¼å³ 1900 å¹´ 1 æ 1 æ¥ï¼ä¹åæä¹åç天æ°ãåºç¡æ¥ææ¯ç³»ç»åèæ¥æãä¸å 许æ©äº 1753 å¹´ 1 æ 1 æ¥ç datetime å¼ãå¦å¤ä¸ä¸ª 4 åèåå¨ä»¥åå¤å毫ç§æ°æ代表çæ¯å¤©çæ¶é´ã
注ï¼smalldatetime æ°æ®ç±»ååå¨æ¥æåæ¯å¤©çæ¶é´ï¼ä½ç²¾ç¡®åº¦ä½äº datetimeãSQL Server å° smalldatetime çå¼åå¨ä¸ºä¸¤ä¸ª 2 åèçæ´æ°ã第ä¸ä¸ª 2 åèåå¨ 1900 å¹´ 1 æ 1 æ¥åç天æ°ãå¦å¤ä¸ä¸ª 2 åèåå¨åå¤åçåéæ°ãæ¥æèå´ä»1900 å¹´ 1 æ 1 æ¥å° 2079 å¹´ 6 æ 6 æ¥ï¼ç²¾ç¡®å°åéã
timestampï¼timestamp è¿ç§æ°æ®ç±»å表ç°èªå¨çæçäºè¿å¶æ°ï¼ç¡®ä¿è¿äºæ°å¨æ°æ®åºä¸æ¯å¯ä¸çãtimestamp ä¸è¬ç¨ä½ç»è¡¨è¡å çæ¬æ³çæºå¶ãåå¨å¤§å°ä¸º 8 åèã
MySQLä¸datetimeåtimestampçåºå«ï¼
(ä¸)èå´ä¸åã
âdatetimeâ 以'YYYY-MM-DD HH:MM:SS'æ ¼å¼æ£ç´¢åæ¾ç¤ºDATETIMEå¼ãæ¯æçèå´ä¸º'1000-01-01 00:00:00'å°'9999-12-31 23:59:59'TIMESTAMPå¼ä¸è½æ©äº1970ææäº2037
(äº)å¨åä¸åã
1ï¼TIMESTAMP
â 4个åèå¨åï¼Time stamp value is stored in 4 bytesï¼
â¡å¼ä»¥UTCæ ¼å¼ä¿åï¼ it stores the number of millisecondsï¼
â¢æ¶åºè½¬å ï¼åå¨æ¶å¯¹å½åçæ¶åºè¿è¡è½¬æ¢ï¼æ£ç´¢æ¶å转æ¢åå½åçæ¶åºã
2ï¼datetime
â 8个åèå¨åï¼8 bytes storageï¼
â¡å®é æ ¼å¼å¨åï¼Just stores what you have stored and retrieves the same thing which you have stored.ï¼
â¢ä¸æ¶åºæ å ³ï¼It has nothing to deal with the TIMEZONE and Conversion.ï¼
注ï¼TIMESTAMPåçæ¾ç¤ºæ ¼å¼ä¸datetimeåç¸åã
SqlServerä¸datetimeåtimestampå¨ä¸ç¨æ³åºå«åºæ¬é½å·®ä¸å¤ã
datetime ï¼
SqlServerä¸ç¨ä¸¤ä¸ª 4 åèçæ´æ°å é¨åå¨ datetime æ°æ®ç±»åçå¼ã第ä¸ä¸ª 4 åèåå¨ base dateï¼å³ 1900 å¹´ 1 æ 1 æ¥ï¼ä¹åæä¹åç天æ°ãåºç¡æ¥ææ¯ç³»ç»åèæ¥æãä¸å 许æ©äº 1753 å¹´ 1 æ 1 æ¥ç datetime å¼ãå¦å¤ä¸ä¸ª 4 åèåå¨ä»¥åå¤å毫ç§æ°æ代表çæ¯å¤©çæ¶é´ã
注ï¼smalldatetime æ°æ®ç±»ååå¨æ¥æåæ¯å¤©çæ¶é´ï¼ä½ç²¾ç¡®åº¦ä½äº datetimeãSQL Server å° smalldatetime çå¼åå¨ä¸ºä¸¤ä¸ª 2 åèçæ´æ°ã第ä¸ä¸ª 2 åèåå¨ 1900 å¹´ 1 æ 1 æ¥åç天æ°ãå¦å¤ä¸ä¸ª 2 åèåå¨åå¤åçåéæ°ãæ¥æèå´ä»1900 å¹´ 1 æ 1 æ¥å° 2079 å¹´ 6 æ 6 æ¥ï¼ç²¾ç¡®å°åéã
timestampï¼timestamp è¿ç§æ°æ®ç±»å表ç°èªå¨çæçäºè¿å¶æ°ï¼ç¡®ä¿è¿äºæ°å¨æ°æ®åºä¸æ¯å¯ä¸çãtimestamp ä¸è¬ç¨ä½ç»è¡¨è¡å çæ¬æ³çæºå¶ãåå¨å¤§å°ä¸º 8 åèã
温馨提示:答案为网友推荐,仅供参考
第1个回答 2018-03-09
一、区别:
1、DATETIME类型用在你需要同时包含日期和时间信息的值时。MySQL检索并且以'YYYY-MM-DD HH:MM:SS'格式显示DATETIME值,支持的范围是'1000-01-01 00:00:00'到'9999-12-31 23:59:59'。
2、TIMESTAMP列类型提供一种类型,可以使用它自动地用当前的日期和时间标记INSERT或UPDATE的操作。如果有多个TIMESTAMP列,只有第一个自动更新。
二、简介
1)TIMESTAMP
1.4个字节储存(Time stamp value is stored in 4 bytes)
2.值以UTC格式保存( it stores the number of milliseconds)
3.时区转化 ,存储时对当前的时区进行转换,检索时再转换回当前的时区。
2)datetime
1.8个字节储存(8 bytes storage)
2.实际格式储存(Just stores what you have stored and retrieves the same thing which you have stored.)
3.与时区无关(It has nothing to deal with the TIMEZONE and Conversion.)
1、DATETIME类型用在你需要同时包含日期和时间信息的值时。MySQL检索并且以'YYYY-MM-DD HH:MM:SS'格式显示DATETIME值,支持的范围是'1000-01-01 00:00:00'到'9999-12-31 23:59:59'。
2、TIMESTAMP列类型提供一种类型,可以使用它自动地用当前的日期和时间标记INSERT或UPDATE的操作。如果有多个TIMESTAMP列,只有第一个自动更新。
二、简介
1)TIMESTAMP
1.4个字节储存(Time stamp value is stored in 4 bytes)
2.值以UTC格式保存( it stores the number of milliseconds)
3.时区转化 ,存储时对当前的时区进行转换,检索时再转换回当前的时区。
2)datetime
1.8个字节储存(8 bytes storage)
2.实际格式储存(Just stores what you have stored and retrieves the same thing which you have stored.)
3.与时区无关(It has nothing to deal with the TIMEZONE and Conversion.)
第2个回答 2018-03-09
DATETIME
日期和时间的组合。支持的范围是'1000-01-01 00:00:00'到'9999-12-31 23:59:59'。MySQL以'YYYY-MM-DD HH:MM:SS'格式显示DATETIME值,但允许使用字符串或数字为DATETIME列分配值。
TIMESTAMP[(M)]
时间戳。范围是'1970-01-01 00:00:00'到2037年。
TIMESTAMP列用于INSERT或UPDATE操作时记录日期和时间。如果你不分配一个值,表中的第一个TIMESTAMP列自动设置为最近操作的日期和时间。也可以通过分配一个NULL值,将TIMESTAMP列设置为当前的日期和时间。
TIMESTAMP值返回后显示为'YYYY-MM-DD HH:MM:SS'格式的字符串,显示宽度固定为19个字符。如果想要获得数字值,应在TIMESTAMP 列添加+0。
注释:MySQL 4.1以前使用的TIMESTAMP格式在MySQL 5.1中不支持;关于旧格式的信息参见MySQL 4.1 参考手册。
日期和时间的组合。支持的范围是'1000-01-01 00:00:00'到'9999-12-31 23:59:59'。MySQL以'YYYY-MM-DD HH:MM:SS'格式显示DATETIME值,但允许使用字符串或数字为DATETIME列分配值。
TIMESTAMP[(M)]
时间戳。范围是'1970-01-01 00:00:00'到2037年。
TIMESTAMP列用于INSERT或UPDATE操作时记录日期和时间。如果你不分配一个值,表中的第一个TIMESTAMP列自动设置为最近操作的日期和时间。也可以通过分配一个NULL值,将TIMESTAMP列设置为当前的日期和时间。
TIMESTAMP值返回后显示为'YYYY-MM-DD HH:MM:SS'格式的字符串,显示宽度固定为19个字符。如果想要获得数字值,应在TIMESTAMP 列添加+0。
注释:MySQL 4.1以前使用的TIMESTAMP格式在MySQL 5.1中不支持;关于旧格式的信息参见MySQL 4.1 参考手册。