SQL Server中smalldatetime的日期範圍為何是[1900-01-01,2079-06-06]

来源:http://www.cnblogs.com/dzy863/archive/2016/02/29/5228998.html
-Advertisement-
Play Games

本文目錄列表: 1、SQL Server中的基準日期 2、smalldatetime的日期範圍 3、smalldatetime的日期範圍和無符號2位元組整數的關係 4、總結語 5、參考清單列表 SQL Server中的基準日期 SQL Server 中針對datetime和smalldatetime這


本文目錄列表: 1、SQL Server中的基準日期 2smalldatetime的日期範圍 3、smalldatetime的日期範圍和無符號2位元組整數的關係 4、總結語 5、參考清單列表   SQL Server中的基準日期
  SQL Server 中針對datetime和smalldatetime這兩個日期時間數據類型提供一個基準日期,也就是1900-01-01。 以下摘錄自MSDN

SQL Server 2005 資料庫引擎用兩個 4 位元組的整數內部存儲 datetime 數據類型的值。第一個 4 位元組存儲“基礎日期”(即 1900 年 1 月 1 日)之前或之後的天數。基礎日期是系統參照日期。另外一個 4 位元組存儲天的時間,以午夜後經過的 1/300 秒數表示。

smalldatetime 數據類型存儲天的日期和時間,但精確度低於 datetime。資料庫引擎將 smalldatetime 值存儲為兩個 2 位元組的整數。第一個 2 位元組存儲 1900 年 1 月 1 日後的天數。另外一個 2 位元組存儲午夜後經過的分鐘數。

註意:

1、以上“基礎日期”(即1900年1月1日)也就是本文要說的基準日期。

 

smalldatetime的日期範圍
smalldatetime的日期範圍根據msdn中相關資料是[1900-01-01,2079-06-06]。   smalldatetime的日期範圍和無符號2位元組整數的關係   SQL Server針對datetime和smalldatetime的數據類型的變數或欄位列賦值為0或1900-01-01,其結果是相同的。 以下T-SQL代碼效果如下:     smalldatetime日期的最大值為2079-06-06,如果針對該數據的賦值為65535(該值為無符號2位元組整數的最大值2^16-1),結果也是為2079-06-06的,以下T-SQL代碼效果如下:   從0對應1900-01-01,65535對應2079-06-06其對應關係,大致可以得到smalldatetime的日期範圍和無符號2位元組整數的範圍正好一一對應的。可以通過T-SQL得到證明,如下: 註意: 1、中間省略了部分,僅顯示頭和尾的數據對應,中間省略。 2、函數dbo.ufn_GetNums可以參看SQL Server數字輔助表的實現   總結語
  smalldatetime的日期範圍是和無符號2位元組整數的範圍一一對應的。針對這種對應關係,如果數據表中的欄位列為日期時間數據類型,且精度為天,就可以保存一個整數和該日期保存一種對應關係,可以參考基準日期1900-01-01做起點映射,當然也可以選擇其他的日期,當然也考慮相應的日期時間數據類型的範圍的。   參考清單列表
1、https://technet.microsoft.com/zh-cn/library/ms187819(v=sql.90).aspx 2、http://www.cnblogs.com/dzy863/p/5080832.html
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 佈局layout中使用: 1 <ProgressBar 2 android:id="@+id/progress_bar" 3 style="?android:attr/progressBarStyleHorizontal" <!--必須設置為水平--> 4 android:progressDrawa
  • 分類:C#、Android、VS2015; 創建日期:2016-03-01 一、簡介 本章主要演示Started Service、帶Intent過濾器的Started Service、IntentService的基本用法,並簡單介紹Android提供的系統服務。 二、本章示例主界面 1、運行截圖 2...
  • 獲取【下載地址】 QQ: 313596790 【免費支持更新】支持三大資料庫 mysql oracle sqlsever 更專業、更強悍、適合不同用戶群體【新錄針對本系統的視頻教程,手把手教開發一個模塊,快速掌握本系統】A 代碼生成器(開發利器); 增刪改查的處理類,service層,mybatis
  • 游標(Cursor)是處理數據的一種方法,為了查看或者處理結果集中的數據,游標提供了在結果集中一次以行或者多行前進或向後瀏覽數據的能力。我們可以把游標當作一個指針,它可以指定結果中的任何位置,然後允許用戶對指定位置的數據進行處理。 1.游標的組成 游標包含兩個部分:一個是游標結果集、一個是游標位置。
  • null是什麼? 不知道。我是說,他的意思就是不知道(unknown)。 它和true、false組成謂詞的三個邏輯值,代表“未知”。與true和false相比,null最難以令人捉摸,因為它沒有明確的值,在不同的場景下,它能代表不同的含義。下文以例子的方式給大家分享下null使用的典型場景及對應的
  • 在工作中我碰到這樣一個問題,session表需要用到timestamp的欄位,在進行timestamp欄位更新時出現了為題,比如需要對session的有效期增加1小時。採用 systimestamp + 1/24 會丟失秒後的精度,感覺增加之後就變成了date型的樣子。經過研究發現oracle 有個
  • ubuntu上mysql預設安裝使用的字元集是latin1。 1 查看字元集支持 show character set; 2 查看字元集相關變數 show variables like "character_set%"; 3 設置預設字元集 為解決亂碼問題,最簡單的辦法就是修改預設字元集。修改預設字
  • (一)是否存在一個伺服器性能基線? (1)、有了基線才有一個衡量的指標,否則一切計數器都是沒有意思。否則可能我的系統本來就很慢,例如現在公司就有一個OLAP系統,每天就花了三個小時產生一個報表。也不是問題。 (2)、有了基線才能確認我的伺服器確實存在調整的必要了,例如今天發佈新的代碼後,性能明顯偏離
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...