<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    qileilove

    blog已經(jīng)轉(zhuǎn)移至github,大家請?jiān)L問 http://qaseven.github.io/

    為什么編程語言以及數(shù)據(jù)庫要從1970年1月1日開始計(jì)算時(shí)

    今天一時(shí)興起想起了在SQL Server中使用DateTime.MinValue插入時(shí)間時(shí)報(bào)錯(cuò)的問題,原因就在于數(shù)據(jù)庫的最小時(shí)間和.Net里的最小時(shí)間不一致導(dǎo)致的,網(wǎng)上查閱了些資料,找到如下結(jié)果

      Net Framewrok 中,

    DateTime.MinValue           => 0001/01/01 00:00:00
    SqlDateTime.MinValue.Value  => 1753/01/01 00:00:00
    SQL Server 2005 中,
    DateTime 最小值              => 1753/01/01 00:00:00
    SmallDateTime 最小值         => 1900/01/01 00:00:00
    Net Framewrok 中,
    DateTime.MaxValue            => 9999/12/31 23:59:59.999
    SqlDateTime.MaxValue.Value   => 9999/12/31 23:59:59.997
    SQL Server 2005 中,
    DateTime 最大值               => 9999/12/31 23:59:59.997
    SmallDateTime 最大值         =>2079.6.6

      所以需要在數(shù)據(jù)庫插入最小時(shí)間時(shí)不能使用DateTime.MinValue,需要使用

      SqlDateTime.MinValue.Value。

      好了到現(xiàn)在SQL Server數(shù)據(jù)庫時(shí)間問題解決了,突然又想起了系統(tǒng)中有個(gè)啥1970年1月1日的時(shí)間。那這個(gè)時(shí)間又是啥來來歷呢,懷著好奇寶寶的心理我有在網(wǎng)上查閱了一番得到如下解釋:

      1.可以簡單的這樣認(rèn)為:UNIX系統(tǒng)認(rèn)為1970年1月1日0點(diǎn)是時(shí)間紀(jì)元,所以我們常說的UNIX時(shí)間戳是以1970年1月1日0點(diǎn)為計(jì)時(shí)起點(diǎn)時(shí)間的。這個(gè)解釋是懶人最愛^_^

      2.這個(gè)比較科學(xué)

      最初計(jì)算機(jī)操作系統(tǒng)是32位,而時(shí)間也是用32位表示。32位能表示的最大值是2147483647。另外1年365天的總秒數(shù)是31536000,2147483647/31536000 = 68.1,也就是說32位能表示的最長時(shí)間是68年,而實(shí)際上到2038年01月19日03時(shí)14分07秒,便會(huì)到達(dá)最大時(shí)間,過了這個(gè)時(shí)間點(diǎn),所有32位操作系統(tǒng)時(shí)間便會(huì)變?yōu)?0000000 00000000 00000000 00000000,也就是1901年12月13日20時(shí)45分52秒,這樣便會(huì)出現(xiàn)時(shí)間回歸的現(xiàn)象,很多軟件便會(huì)運(yùn)行異常了。

      到這里,我想問題的答案已經(jīng)出來了:因?yàn)橛?2位來表示時(shí)間的最大間隔是68年,而最早出現(xiàn)的UNIX操作系統(tǒng)考慮到計(jì)算機(jī)產(chǎn)生的年代和應(yīng)用的時(shí)限綜合取了1970年1月1日作為UNIX TIME的紀(jì)元時(shí)間(開始時(shí)間),至于時(shí)間回歸的現(xiàn)象相信隨著64為操作系統(tǒng)的產(chǎn)生逐漸得到解決,因?yàn)橛?4位操作系統(tǒng)可以表示到292,277,026,596年12月4日15時(shí)30分08秒,相信我們的N代子孫,哪怕地球毀滅那天都不用愁不夠用了,因?yàn)檫@個(gè)時(shí)間已經(jīng)是千億年以后了。

    posted on 2013-09-17 13:06 順其自然EVO 閱讀(281) 評論(0)  編輯  收藏 所屬分類: 數(shù)據(jù)庫

    <2013年9月>
    25262728293031
    1234567
    891011121314
    15161718192021
    22232425262728
    293012345

    導(dǎo)航

    統(tǒng)計(jì)

    常用鏈接

    留言簿(55)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 97se亚洲国产综合自在线| 亚洲大尺度无码无码专线一区| 亚洲免费二区三区| 亚洲中文字幕无码av永久| 亚洲精品WWW久久久久久 | free哆拍拍免费永久视频| 亚洲黄色网址在线观看| 国产精品自在自线免费观看| 黄桃AV无码免费一区二区三区| 91亚洲精品麻豆| 亚洲美女高清一区二区三区| 一级毛片aaaaaa免费看| 久久亚洲精品无码av| 亚洲精品在线观看视频| 永久免费AV无码网站在线观看| 三年片免费高清版 | 亚洲午夜福利精品久久| 五月亭亭免费高清在线| yellow视频免费在线观看| 自怕偷自怕亚洲精品| 免费一区二区视频| 久视频精品免费观看99| 99re在线精品视频免费| 国产成人精品日本亚洲语音| 亚洲综合一区二区国产精品| 日韩精品成人亚洲专区| 57PAO成人国产永久免费视频 | 亚洲精品视频免费看| 日韩毛片一区视频免费| 亚洲人成7777影视在线观看| 亚洲男人的天堂www| 国产在线观看免费视频播放器| 18级成人毛片免费观看| 久久久久久噜噜精品免费直播| 亚洲欧美日韩一区二区三区在线| 无码久久精品国产亚洲Av影片| 亚洲国产成人乱码精品女人久久久不卡| 一级毛片成人免费看a| 亚洲高清视频在线| 67pao强力打造67194在线午夜亚洲| 亚洲国产精品丝袜在线观看|