0

「yyyy-mm-dd hh:mm:ss」形式でのみ日付を挿入するようにユーザーに強制するにはどうすればよいですか。

「CONVERT」関数を使用して、いつでも任意の形式で日付を変換できることを理解しています。しかし、私はユーザーがこの形式で日付を入力するのが好きです。

また

データベースに入力された日付の形式が正しいかどうかを確認するにはどうすればよいですか。日付をチェックする関数を使用するのが好きです。

4

1 に答える 1

0

日時形式を文字列または varchar 値としてストアド プロシージャに渡します。ここから、必要な日時形式に変換し、これを 2 番目の varchar 変数に格納して、最初の変数と比較できます。元の varchar 日付と変換された varchar 日付の両方が得られたので、2 つの文字列を比較して一致するかどうかを確認します。

CREATE FUNCTION checkdateformat (@myUserInput nvarchar(30)) RETURNS INTEGER AS

DECLARE @myDateString varchar(30)
SET @myDateString = @myUserInput

DECLARE @myCompareString varchar(30)
SET @myCompareString = (SELECT CONVERT(varchar(30),@myDateString,120) myDate)

DECLARE @myReturnValue INTEGER
SELECT @myReturnValue = CASE WHEN @myDateString = @myCompareString THEN 1 ELSE 0 END

RETURN @myReturnValue
于 2012-03-30T04:31:23.940 に答える