MSDE FunClub 現在までのアクセスカウント数 最終更新日 : 2000/06/12
Microsoft Data Engine FunClub
Since 2000.06.12
SQLServer7.0/MSDE 完全トレーニングテキスト(上巻)
【第1章81p 〜 82p掲載】

-- [SQL01_23.SQL]
--             SQLServer7.0 Transact-SQL言語
--             日本技術ソフト開発  堀川 明
--            http://www.horikawa.ne.jp/msde/
--
-- このSQLプログラムは、
--        日付け型データの使い方を勉強します
--

-- ( 件処理されました)のメッセージを抑止する
    SET NOCOUNT ON
GO

-- 一時プロシージャを登録します
-- 名前が # で始まるプロシージャは、この接続期間中の私だけ
-- 使うことができます(他の人は使うことができません)
    CREATE PROCEDURE #DATE_PRINT
           @DTFM varchar(20)  ,   -- 最初の引数は、日付け型
           @LN   varchar(10) = '' -- 2番目の引数は省略すると空文字列となる
    AS
        DECLARE @DT datetime
        SELECT @DT = @DTFM
        PRINT @LN + '[書式:' + @DTFM + '] ' + CONVERT(char,@DT) -- 日付け型データを表示します
        -- プロシージャ定義の終了はGOです。ここでプロシージャの定義は終わり
GO


-- 作業用変数を使った見本例
    DECLARE @SD  varchar(20)
    SELECT @SD = '2005-06-30 10:20:00'
    PRINT ''
    PRINT '                                 月 日  年  時刻 の順番で表示されます'
    EXEC #DATE_PRINT @SD , '[見本]'
GO

-- 日付け表現形式のパターン
    EXEC #DATE_PRINT '2005-06-30 10:20:00' , '[ODBC]'
    EXEC #DATE_PRINT '050630 10:20:00    ' , '[ISO ]'
    EXEC #DATE_PRINT '20050630 10:20:00  ' , '[ISO ]'
    EXEC #DATE_PRINT '05/06/30 10:20:00  ' , '[JPN ]'
    EXEC #DATE_PRINT '2005/06/30 10:20:00' , '[JPN ]'
    EXEC #DATE_PRINT '06-30-2005 10:20:00' , '[USA ]'
    PRINT ''
GO


-- 明示的に順番を指定する(年月日の順番)
    SET DATEFORMAT YMD
    EXEC #DATE_PRINT '06-08-12  '  
    EXEC #DATE_PRINT '06/08/12  '
    EXEC #DATE_PRINT '06.08.12  '
    EXEC #DATE_PRINT '2006-08-12'  
    EXEC #DATE_PRINT '2006/08/12'
    EXEC #DATE_PRINT '2006.08.12'
    PRINT ''
GO


-- 明示的に順番を指定する(月日年の順番)
    SET DATEFORMAT MDY
    EXEC #DATE_PRINT '06-08-12  '
    EXEC #DATE_PRINT '06/08/12  '
    EXEC #DATE_PRINT '06.08.12  '
    EXEC #DATE_PRINT '06-08-2012'
    EXEC #DATE_PRINT '06/08/2012'
    EXEC #DATE_PRINT '06.08.2012'
    PRINT ''
GO

-- 明示的に順番を指定する(日月年の順番)
    SET DATEFORMAT DMY
    EXEC #DATE_PRINT '06-08-12  '
    EXEC #DATE_PRINT '06/08/12  '
    EXEC #DATE_PRINT '06.08.12  '
    EXEC #DATE_PRINT '06-08-2012'
    EXEC #DATE_PRINT '06/08/2012'
    EXEC #DATE_PRINT '06.08.2012'
GO

-- 日本の標準に戻す
-- 上記のDMYの設定がこの接続中ずっと有効になるのを防ぐ
    SET DATEFORMAT  YMD
GO

-- 作成した一時プロシージャを削除する
    DROP PROC #DATE_PRINT
GO







技術評論社の書籍ガイドへ
上巻:ISBN4-7741-0965-7

ウィンドウを閉じる


(株)日本技術ソフト開発 責任編集:堀川 明
MSDE FunClubに関するご意見・ご要望等ございましたら、 msdefun@horikawa.ne.jp までご連絡下さい。
HOME: http://www.horikawa.ne.jp/msde/


MSDE FunClubの運営は、マイクロソフト社とは一切の関係はありません