SlideShare ist ein Scribd-Unternehmen logo
1 von 19
Downloaden Sie, um offline zu lesen
ライトニングトーク
SQL Server

日付時刻型

日付フォーマット
日付時刻型

SQL Server 2005
データ型            最小値                       最大値                       精度
    datetime        1753-01-01 00:00:00.000   9999-12-31 23:59:59.997   3.33 ミリ秒

    smalldatetime   1900-01-01 00:00:00       2079-06-06 23:59:00       1分



   2種類の日付時刻型
データ型            最小値                       最大値                       精度
    datetime        1753-01-01 00:00:00.000   9999-12-31 23:59:59.997   3.33 ミリ秒

    smalldatetime   1900-01-01 00:00:00       2079-06-06 23:59:00       1分



   日付専用、時刻専用のデータ型は無い
   日付と時刻の両方保持する
     今日の時間を記録したつもりが・・・
    insert into ss2005 values ('13:20:20','13:20:20')

       datetime                      smalldatetime
    1 1900-01-01 13:20:20.000        1900-01-01 13:20:20
データ型            最小値                       最大値                       精度
    datetime        1753-01-01 00:00:00.000   9999-12-31 23:59:59.997   3.33 ミリ秒

    smalldatetime   1900-01-01 00:00:00       2079-06-06 23:59:00       1分



   指定できる過去の日付に注意
     平安京(794年)
     関ヶ原の合戦(1600年)が登録できない
    insert into ss2005 values (‘794/1/1',‘1600/01/01')


    varchar データ型からdatetime データ型への変換の結果、範囲外の値
    になりました。
データ型            最小値                       最大値                       精度
     datetime        1753-01-01 00:00:00.000   9999-12-31 23:59:59.997   3.33 ミリ秒

     smalldatetime   1900-01-01 00:00:00       2079-06-06 23:59:00       1分



   精度に注意
     smalldatetimeでは・・・
    insert into ss2005 values('13:20:29.998','13:20:29.999’)


       smalldatetime                 smalldatetime
    1 1900-01-01 13:20:00            1900-01-01 13:21:00
日付時刻型

SQL Server 2008
データ型          最小値                          最大値                           精度
time          00:00:00.0000000             23:59:59.9999999              100ナノ秒

date          0001-01-01                   9999-12-31                    1日

datetime2     0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999    100ナノ秒

datetimeoffset 0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999   100ナノ秒



   新たに4種類追加された
データ型          最小値                          最大値                           精度
time          00:00:00.0000000             23:59:59.9999999              100ナノ秒

date          0001-01-01                   9999-12-31                    1日

datetime2     0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999    100ナノ秒

datetimeoffset 0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999   100ナノ秒



   日付専用、時刻専用データ型が登場
データ型          最小値                          最大値                           精度
time          00:00:00.0000000             23:59:59.9999999              100ナノ秒

date          0001-01-01                   9999-12-31                    1日

datetime2     0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999    100ナノ秒

datetimeoffset 0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999   100ナノ秒



   過去の日付が拡大
     平安京(794年)
     江戸幕府(1600年)も問題なし
データ型           最小値                           最大値                         精度
time           00:00:00.0000000              23:59:59.9999999            100ナノ秒

date           0001-01-01                    9999-12-31                  1日

datetime2      0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999   100ナノ秒

datetimeoffset 0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999   100ナノ秒



   時刻の「秒」の有効桁数を設定できるよう
    になった
    CREATE TABLE [dbo].[ss2008](
            [t] [time](7) NULL,
            [dt2] [datetime2](7) NULL,
            [dto] [datetimeoffset](7) NULL
    ) ON [PRIMARY]
データ型          最小値                          最大値                           精度
time          00:00:00.0000000             23:59:59.9999999              100ナノ秒

date          0001-01-01                   9999-12-31                    1日

datetime2     0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999    100ナノ秒

datetimeoffset 0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999   100ナノ秒



   Datetime2はdatetimeの改良版
   ストレージサイズ
     Datetime :8バイト
     Datetime2:6~8バイト
SQL Server

日付フォーマット
形式の種類      形式の例                          DATEFORMAT          SET LAMGAGE        多言語
                                         への依存                への依存               対応
区切りなし      '19980223 14:23:05'           非依存                 非依存                可
数値         '02/23/1998 14:23:05'         依存                  依存                 不可
ANSI SQL   '1998-12-23 14:23:05'         非依存                 依存               可
                                         (datetime2,dateti   (smalldate,datet (date,datetim
                                         meoffset2)                           e2,datetimeoff
                                                             ime)             set)
                                         依存(datetime)
アルファベット    '23 February 1998 14:23:05'   非依存                 依存(月の名前)           不可
ODBC日付時刻   {ts '1998-02-23 14:23:05'}    非依存                 非依存                可
ODBC日付     {d '1998-02-23'}              非依存                 非依存                可
ODBC時刻     {t '14:23:05'}                非依存                 非依存                可
ISO8601    '1998-02-23T14:23:05'         非依存                 非依存                可
時刻         '14:23:05'                    非依存                 非依存                可
           '2:23:05 PM'
   登録時のフォーマットを記録しない
   日付・時刻を内部形式で保持する
    insert into ss2005 values('10/31/2008 11:20:29 PM','20081031 13:20:29')


       datetime                    smalldatetime
    1 2008-10-31 23:20:29.000      2008-10-31 13:20:00
   SQL Server 2008の新しいデータ型
     ANSI SQL標準が推奨
     年(yyyy形式)ではじまっている限り言語、設定に依存
      しない
     「年・月・日」と解釈する
      insert into ss2008 values('2008/10/31','20081031','2008-10-31')


     「月」が最初に来ると言語依存
   日付時刻型
     SQL Server2005では、細かいところで注意が
      必要
     SQL Server 2008でかゆいところに手が届く
      ようになった

   日付フォーマット
     言語中立、設定非依存のものを選択しましょ
     う
   Tibor Karaszi‘s SQL Server pages The
    ultimate guide to the datetime datatypes
     http://www.karaszi.com/SQLServer/info_datetime.asp
   SQL Server 2008 オンライン ブック
     日付および時刻データ型
      ▪ http://technet.microsoft.com/ja-jp/library/ms186724.aspx#
     日時データの使用
      ▪ http://technet.microsoft.com/ja-jp/library/ms180878.aspx
   SQL Server 2005 Books Online (2007 年 9 月)
     日付と時刻 (Transact-SQL)
      ▪ http://technet.microsoft.com/ja-
        jp/library/ms187819(SQL.90).aspx

Weitere ähnliche Inhalte

Andere mochten auch

Clp Get Healthy Workshop Cmw
Clp Get Healthy Workshop CmwClp Get Healthy Workshop Cmw
Clp Get Healthy Workshop CmwSimon Berry
 
Kiểu mảng
Kiểu mảngKiểu mảng
Kiểu mảngLinh Lê
 
恵比寿里庭プロジェクト
恵比寿里庭プロジェクト恵比寿里庭プロジェクト
恵比寿里庭プロジェクトebisusatoniwapj
 
Dynamic Language による Silverlight2 アプリケーション開発
Dynamic Language による Silverlight2 アプリケーション開発Dynamic Language による Silverlight2 アプリケーション開発
Dynamic Language による Silverlight2 アプリケーション開発terurou
 
Spam Providers Study
Spam Providers StudySpam Providers Study
Spam Providers Studyguestb4dc1a
 

Andere mochten auch (6)

Clp Get Healthy Workshop Cmw
Clp Get Healthy Workshop CmwClp Get Healthy Workshop Cmw
Clp Get Healthy Workshop Cmw
 
Kiểu mảng
Kiểu mảngKiểu mảng
Kiểu mảng
 
恵比寿里庭プロジェクト
恵比寿里庭プロジェクト恵比寿里庭プロジェクト
恵比寿里庭プロジェクト
 
Dynamic Language による Silverlight2 アプリケーション開発
Dynamic Language による Silverlight2 アプリケーション開発Dynamic Language による Silverlight2 アプリケーション開発
Dynamic Language による Silverlight2 アプリケーション開発
 
Blogujeme vo wordpresse
Blogujeme vo wordpresseBlogujeme vo wordpresse
Blogujeme vo wordpresse
 
Spam Providers Study
Spam Providers StudySpam Providers Study
Spam Providers Study
 

Ähnlich wie 1110 Lt

ブラウザでMap Reduce風味の並列分散処理
ブラウザでMap Reduce風味の並列分散処理ブラウザでMap Reduce風味の並列分散処理
ブラウザでMap Reduce風味の並列分散処理Shinya Miyazaki
 
【12-B-4】 並列処理開発を支援するコンパイラの機能
【12-B-4】 並列処理開発を支援するコンパイラの機能【12-B-4】 並列処理開発を支援するコンパイラの機能
【12-B-4】 並列処理開発を支援するコンパイラの機能devsumi2009
 
テキストマイニングとNLPビジネス
テキストマイニングとNLPビジネステキストマイニングとNLPビジネス
テキストマイニングとNLPビジネスHiroshi Ono
 
【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」
【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」
【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」devsumi2009
 
Japanese Article
Japanese ArticleJapanese Article
Japanese Articleguest148b6
 
Sc2009autumn 次世代Daoフレームワーク Doma
Sc2009autumn 次世代Daoフレームワーク DomaSc2009autumn 次世代Daoフレームワーク Doma
Sc2009autumn 次世代Daoフレームワーク DomaToshihiro Nakamura
 
4200 Kte7.0 Training V1.0
4200 Kte7.0 Training V1.04200 Kte7.0 Training V1.0
4200 Kte7.0 Training V1.0wayneliao
 
【13 C 2】デベロッパーに贈る!M-V-VMパターンで造るWPFアプリケーション
【13 C 2】デベロッパーに贈る!M-V-VMパターンで造るWPFアプリケーション【13 C 2】デベロッパーに贈る!M-V-VMパターンで造るWPFアプリケーション
【13 C 2】デベロッパーに贈る!M-V-VMパターンで造るWPFアプリケーションYuya Yamaki
 
とちぎRuby会議01(原)
とちぎRuby会議01(原)とちぎRuby会議01(原)
とちぎRuby会議01(原)Shin-ichiro HARA
 
081210 Idcon 04 Itoh Peopleservice
081210 Idcon 04 Itoh Peopleservice081210 Idcon 04 Itoh Peopleservice
081210 Idcon 04 Itoh PeopleserviceHiroki Itoh
 
Noip 2016-day2
Noip 2016-day2Noip 2016-day2
Noip 2016-day2德源 何
 
JARIR BOOKSTORE 2
JARIR BOOKSTORE 2JARIR BOOKSTORE 2
JARIR BOOKSTORE 2gueste54184
 
Where20 2009report
Where20 2009reportWhere20 2009report
Where20 2009reportToru Mori
 
アジャイル事例紹介 —夜のおしごと編—
アジャイル事例紹介 —夜のおしごと編—アジャイル事例紹介 —夜のおしごと編—
アジャイル事例紹介 —夜のおしごと編—Fumihiko Kinoshita
 
AI&medical imaging in japan 2018
AI&medical imaging in japan 2018AI&medical imaging in japan 2018
AI&medical imaging in japan 2018yoshihiro todoroki
 

Ähnlich wie 1110 Lt (20)

ブラウザでMap Reduce風味の並列分散処理
ブラウザでMap Reduce風味の並列分散処理ブラウザでMap Reduce風味の並列分散処理
ブラウザでMap Reduce風味の並列分散処理
 
【12-B-4】 並列処理開発を支援するコンパイラの機能
【12-B-4】 並列処理開発を支援するコンパイラの機能【12-B-4】 並列処理開発を支援するコンパイラの機能
【12-B-4】 並列処理開発を支援するコンパイラの機能
 
テキストマイニングとNLPビジネス
テキストマイニングとNLPビジネステキストマイニングとNLPビジネス
テキストマイニングとNLPビジネス
 
【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」
【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」
【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」
 
Japanese Article
Japanese ArticleJapanese Article
Japanese Article
 
sigfpai73-kaji
sigfpai73-kajisigfpai73-kaji
sigfpai73-kaji
 
Sc2009autumn 次世代Daoフレームワーク Doma
Sc2009autumn 次世代Daoフレームワーク DomaSc2009autumn 次世代Daoフレームワーク Doma
Sc2009autumn 次世代Daoフレームワーク Doma
 
4200 Kte7.0 Training V1.0
4200 Kte7.0 Training V1.04200 Kte7.0 Training V1.0
4200 Kte7.0 Training V1.0
 
【13 C 2】デベロッパーに贈る!M-V-VMパターンで造るWPFアプリケーション
【13 C 2】デベロッパーに贈る!M-V-VMパターンで造るWPFアプリケーション【13 C 2】デベロッパーに贈る!M-V-VMパターンで造るWPFアプリケーション
【13 C 2】デベロッパーに贈る!M-V-VMパターンで造るWPFアプリケーション
 
とちぎRuby会議01(原)
とちぎRuby会議01(原)とちぎRuby会議01(原)
とちぎRuby会議01(原)
 
081210 Idcon 04 Itoh Peopleservice
081210 Idcon 04 Itoh Peopleservice081210 Idcon 04 Itoh Peopleservice
081210 Idcon 04 Itoh Peopleservice
 
20210119 OCIJP#14 オラクル大橋資料
20210119 OCIJP#14 オラクル大橋資料20210119 OCIJP#14 オラクル大橋資料
20210119 OCIJP#14 オラクル大橋資料
 
object-shapes
object-shapesobject-shapes
object-shapes
 
4
44
4
 
Noip 2016-day2
Noip 2016-day2Noip 2016-day2
Noip 2016-day2
 
It Flyer Page08
It Flyer Page08It Flyer Page08
It Flyer Page08
 
JARIR BOOKSTORE 2
JARIR BOOKSTORE 2JARIR BOOKSTORE 2
JARIR BOOKSTORE 2
 
Where20 2009report
Where20 2009reportWhere20 2009report
Where20 2009report
 
アジャイル事例紹介 —夜のおしごと編—
アジャイル事例紹介 —夜のおしごと編—アジャイル事例紹介 —夜のおしごと編—
アジャイル事例紹介 —夜のおしごと編—
 
AI&medical imaging in japan 2018
AI&medical imaging in japan 2018AI&medical imaging in japan 2018
AI&medical imaging in japan 2018
 

Mehr von 貴仁 大和屋

SQL Server 2016 :Managed backup to Azure
SQL Server 2016 :Managed backup to AzureSQL Server 2016 :Managed backup to Azure
SQL Server 2016 :Managed backup to Azure貴仁 大和屋
 
Instrumentation and Telemetry ガイダンス
Instrumentation and TelemetryガイダンスInstrumentation and Telemetryガイダンス
Instrumentation and Telemetry ガイダンス貴仁 大和屋
 
SQL Server運用実践 - 3年間80台の運用経験から20の教訓
SQL Server運用実践 - 3年間80台の運用経験から20の教訓SQL Server運用実践 - 3年間80台の運用経験から20の教訓
SQL Server運用実践 - 3年間80台の運用経験から20の教訓貴仁 大和屋
 
Azure sql database 入門 2014年10月版
Azure sql database 入門 2014年10月版Azure sql database 入門 2014年10月版
Azure sql database 入門 2014年10月版貴仁 大和屋
 
組織のナレッジ共有の促進方法 - 人を動かす
組織のナレッジ共有の促進方法 - 人を動かす組織のナレッジ共有の促進方法 - 人を動かす
組織のナレッジ共有の促進方法 - 人を動かす貴仁 大和屋
 
Azure LT at Japan Oracle User Group
Azure LT at Japan Oracle User GroupAzure LT at Japan Oracle User Group
Azure LT at Japan Oracle User Group貴仁 大和屋
 
Sql serverインデックスの断片化と再構築の必要性について
Sql serverインデックスの断片化と再構築の必要性についてSql serverインデックスの断片化と再構築の必要性について
Sql serverインデックスの断片化と再構築の必要性について貴仁 大和屋
 
Memcached api搭載の「my sql cluster 7.2」
Memcached api搭載の「my sql cluster 7.2」Memcached api搭載の「my sql cluster 7.2」
Memcached api搭載の「my sql cluster 7.2」貴仁 大和屋
 
2011/12/3 わんくま同盟
2011/12/3 わんくま同盟2011/12/3 わんくま同盟
2011/12/3 わんくま同盟貴仁 大和屋
 
Sql azureデータバックアップ方法
Sql azureデータバックアップ方法Sql azureデータバックアップ方法
Sql azureデータバックアップ方法貴仁 大和屋
 
Windows azureストレージの耐障害性
Windows azureストレージの耐障害性Windows azureストレージの耐障害性
Windows azureストレージの耐障害性貴仁 大和屋
 
2012年1月技術ひろば
2012年1月技術ひろば2012年1月技術ひろば
2012年1月技術ひろば貴仁 大和屋
 
マニアックス5Sql azure
マニアックス5Sql azureマニアックス5Sql azure
マニアックス5Sql azure貴仁 大和屋
 
Windows Azure BootCamp - SQL Azure
Windows Azure BootCamp - SQL AzureWindows Azure BootCamp - SQL Azure
Windows Azure BootCamp - SQL Azure貴仁 大和屋
 

Mehr von 貴仁 大和屋 (20)

SQL Server 2016 :Managed backup to Azure
SQL Server 2016 :Managed backup to AzureSQL Server 2016 :Managed backup to Azure
SQL Server 2016 :Managed backup to Azure
 
freemium
freemiumfreemium
freemium
 
Instrumentation and Telemetry ガイダンス
Instrumentation and TelemetryガイダンスInstrumentation and Telemetryガイダンス
Instrumentation and Telemetry ガイダンス
 
SQL Server運用実践 - 3年間80台の運用経験から20の教訓
SQL Server運用実践 - 3年間80台の運用経験から20の教訓SQL Server運用実践 - 3年間80台の運用経験から20の教訓
SQL Server運用実践 - 3年間80台の運用経験から20の教訓
 
Azure sql database 入門 2014年10月版
Azure sql database 入門 2014年10月版Azure sql database 入門 2014年10月版
Azure sql database 入門 2014年10月版
 
組織のナレッジ共有の促進方法 - 人を動かす
組織のナレッジ共有の促進方法 - 人を動かす組織のナレッジ共有の促進方法 - 人を動かす
組織のナレッジ共有の促進方法 - 人を動かす
 
Azure LT at Japan Oracle User Group
Azure LT at Japan Oracle User GroupAzure LT at Japan Oracle User Group
Azure LT at Japan Oracle User Group
 
Sql serverインデックスの断片化と再構築の必要性について
Sql serverインデックスの断片化と再構築の必要性についてSql serverインデックスの断片化と再構築の必要性について
Sql serverインデックスの断片化と再構築の必要性について
 
Memcached api搭載の「my sql cluster 7.2」
Memcached api搭載の「my sql cluster 7.2」Memcached api搭載の「my sql cluster 7.2」
Memcached api搭載の「my sql cluster 7.2」
 
2011/12/3 わんくま同盟
2011/12/3 わんくま同盟2011/12/3 わんくま同盟
2011/12/3 わんくま同盟
 
2011/11/26 Dot netlab
2011/11/26 Dot netlab2011/11/26 Dot netlab
2011/11/26 Dot netlab
 
Sql azureデータバックアップ方法
Sql azureデータバックアップ方法Sql azureデータバックアップ方法
Sql azureデータバックアップ方法
 
Windows azureストレージの耐障害性
Windows azureストレージの耐障害性Windows azureストレージの耐障害性
Windows azureストレージの耐障害性
 
Sql azure入門
Sql azure入門Sql azure入門
Sql azure入門
 
2012年1月技術ひろば
2012年1月技術ひろば2012年1月技術ひろば
2012年1月技術ひろば
 
マニアックス5Sql azure
マニアックス5Sql azureマニアックス5Sql azure
マニアックス5Sql azure
 
Light switch × sql azure
Light switch × sql azureLight switch × sql azure
Light switch × sql azure
 
Sqlto azure前座
Sqlto azure前座Sqlto azure前座
Sqlto azure前座
 
Windows Azure BootCamp - SQL Azure
Windows Azure BootCamp - SQL AzureWindows Azure BootCamp - SQL Azure
Windows Azure BootCamp - SQL Azure
 
Sql azure database copy
Sql azure database copySql azure database copy
Sql azure database copy
 

1110 Lt

  • 4. データ型 最小値 最大値 精度 datetime 1753-01-01 00:00:00.000 9999-12-31 23:59:59.997 3.33 ミリ秒 smalldatetime 1900-01-01 00:00:00 2079-06-06 23:59:00 1分  2種類の日付時刻型
  • 5. データ型 最小値 最大値 精度 datetime 1753-01-01 00:00:00.000 9999-12-31 23:59:59.997 3.33 ミリ秒 smalldatetime 1900-01-01 00:00:00 2079-06-06 23:59:00 1分  日付専用、時刻専用のデータ型は無い  日付と時刻の両方保持する  今日の時間を記録したつもりが・・・ insert into ss2005 values ('13:20:20','13:20:20') datetime smalldatetime 1 1900-01-01 13:20:20.000 1900-01-01 13:20:20
  • 6. データ型 最小値 最大値 精度 datetime 1753-01-01 00:00:00.000 9999-12-31 23:59:59.997 3.33 ミリ秒 smalldatetime 1900-01-01 00:00:00 2079-06-06 23:59:00 1分  指定できる過去の日付に注意  平安京(794年)  関ヶ原の合戦(1600年)が登録できない insert into ss2005 values (‘794/1/1',‘1600/01/01') varchar データ型からdatetime データ型への変換の結果、範囲外の値 になりました。
  • 7. データ型 最小値 最大値 精度 datetime 1753-01-01 00:00:00.000 9999-12-31 23:59:59.997 3.33 ミリ秒 smalldatetime 1900-01-01 00:00:00 2079-06-06 23:59:00 1分  精度に注意  smalldatetimeでは・・・ insert into ss2005 values('13:20:29.998','13:20:29.999’) smalldatetime smalldatetime 1 1900-01-01 13:20:00 1900-01-01 13:21:00
  • 9. データ型 最小値 最大値 精度 time 00:00:00.0000000 23:59:59.9999999 100ナノ秒 date 0001-01-01 9999-12-31 1日 datetime2 0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999 100ナノ秒 datetimeoffset 0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999 100ナノ秒  新たに4種類追加された
  • 10. データ型 最小値 最大値 精度 time 00:00:00.0000000 23:59:59.9999999 100ナノ秒 date 0001-01-01 9999-12-31 1日 datetime2 0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999 100ナノ秒 datetimeoffset 0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999 100ナノ秒  日付専用、時刻専用データ型が登場
  • 11. データ型 最小値 最大値 精度 time 00:00:00.0000000 23:59:59.9999999 100ナノ秒 date 0001-01-01 9999-12-31 1日 datetime2 0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999 100ナノ秒 datetimeoffset 0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999 100ナノ秒  過去の日付が拡大  平安京(794年)  江戸幕府(1600年)も問題なし
  • 12. データ型 最小値 最大値 精度 time 00:00:00.0000000 23:59:59.9999999 100ナノ秒 date 0001-01-01 9999-12-31 1日 datetime2 0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999 100ナノ秒 datetimeoffset 0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999 100ナノ秒  時刻の「秒」の有効桁数を設定できるよう になった CREATE TABLE [dbo].[ss2008]( [t] [time](7) NULL, [dt2] [datetime2](7) NULL, [dto] [datetimeoffset](7) NULL ) ON [PRIMARY]
  • 13. データ型 最小値 最大値 精度 time 00:00:00.0000000 23:59:59.9999999 100ナノ秒 date 0001-01-01 9999-12-31 1日 datetime2 0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999 100ナノ秒 datetimeoffset 0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999 100ナノ秒  Datetime2はdatetimeの改良版  ストレージサイズ  Datetime :8バイト  Datetime2:6~8バイト
  • 15. 形式の種類 形式の例 DATEFORMAT SET LAMGAGE 多言語 への依存 への依存 対応 区切りなし '19980223 14:23:05' 非依存 非依存 可 数値 '02/23/1998 14:23:05' 依存 依存 不可 ANSI SQL '1998-12-23 14:23:05' 非依存 依存 可 (datetime2,dateti (smalldate,datet (date,datetim meoffset2) e2,datetimeoff ime) set) 依存(datetime) アルファベット '23 February 1998 14:23:05' 非依存 依存(月の名前) 不可 ODBC日付時刻 {ts '1998-02-23 14:23:05'} 非依存 非依存 可 ODBC日付 {d '1998-02-23'} 非依存 非依存 可 ODBC時刻 {t '14:23:05'} 非依存 非依存 可 ISO8601 '1998-02-23T14:23:05' 非依存 非依存 可 時刻 '14:23:05' 非依存 非依存 可 '2:23:05 PM'
  • 16. 登録時のフォーマットを記録しない  日付・時刻を内部形式で保持する insert into ss2005 values('10/31/2008 11:20:29 PM','20081031 13:20:29') datetime smalldatetime 1 2008-10-31 23:20:29.000 2008-10-31 13:20:00
  • 17. SQL Server 2008の新しいデータ型  ANSI SQL標準が推奨  年(yyyy形式)ではじまっている限り言語、設定に依存 しない  「年・月・日」と解釈する insert into ss2008 values('2008/10/31','20081031','2008-10-31')  「月」が最初に来ると言語依存
  • 18. 日付時刻型  SQL Server2005では、細かいところで注意が 必要  SQL Server 2008でかゆいところに手が届く ようになった  日付フォーマット  言語中立、設定非依存のものを選択しましょ う
  • 19. Tibor Karaszi‘s SQL Server pages The ultimate guide to the datetime datatypes  http://www.karaszi.com/SQLServer/info_datetime.asp  SQL Server 2008 オンライン ブック  日付および時刻データ型 ▪ http://technet.microsoft.com/ja-jp/library/ms186724.aspx#  日時データの使用 ▪ http://technet.microsoft.com/ja-jp/library/ms180878.aspx  SQL Server 2005 Books Online (2007 年 9 月)  日付と時刻 (Transact-SQL) ▪ http://technet.microsoft.com/ja- jp/library/ms187819(SQL.90).aspx