0

ここで問題:

select ISDATE('2012-06-21 4:11 P.M.') 

カルチャは en-NZ (ニュージーランド) であり、上記の文字列の日付は日付の形式です。

この場合、ISDATE を true にするにはどうすればよいですか?

4

2 に答える 2

1
select ISDATE('21-06-2012 4:11 P.M.')

このリンクはあなたの場合に便利なものです

http://jefferychinet.blogspot.com/2009/02/sql-server-2005-change-datetime-format.html

于 2012-06-21T19:00:35.040 に答える
0

理想的には、文字列形式をそれよりも適切に制御します。次のような標準形式で渡す場合、カルチャが EN-NZ であるか他のものであるかを気にする必要はありません。

SELECT ISDATE('20120621 16:11'); -- will never fail regardless of locale/language/DMY

ユーザーが任意の形式で日付を入力できるようにする必要がある場合は、さまざまな方法で対処する必要があります。例えば:

SELECT ISDATE(CONVERT(DATETIME, REPLACE('2012-06-21 4:11 P.M.', '.', ''), 120));
于 2012-06-21T20:25:11.217 に答える