| 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