Share via


ISDATE (Transact-SQL)

, 1 #expressiongeçerli birdate,time, ordatetimedeğerini; aksi takdirde, 0.

Tüm genel bakış için Transact-SQL Tarih ve saat veri türü ve işlevler, bkz: Tarih ve saat veri türleri ve işlevler (Transact-SQL). Bilgi ve örnek olan ortak tarih ve saat veri türleri ve işlevleri için bkz:Tarih ve saat veri kullanma.

Topic link iconTransact-SQL sözdizimi kuralları

ISDATE ( expression )

Bağımsız değişkenler

  • expression
    Bir karakter mi dize veyaifade bir karaktere dönüştürülmesi dize. İfade, 4. 000'den az karakter olmalıdır.

Dönüş Türü

int

Remarks

ISDATE yalnızca ile kullanıyorsanız, belirliCONVERT işlev, CONVERT stili parametresi belirtilir ve stil 0, 100, 9 veya 109 eşit değil.

ISDATE dönüş değeri küme ayarlarını bağlıdırküme DATEFORMATLANGUAGE küme , varsayılan dil seçeneği . Örnekleri için bkz:örneğin C.

ISDATE ifade biçimleri

İçin "Desteklenen dize literal biçimleri datetime için" bölümü, ISDATE döndürecektir 1, geçerli biçimler örnekleri bakıntarih/saat ve smalldatetime konuları. Diğer örnekler için Ayrıca bkz: "Arguments" bölümündeki Giriş/Çıkış sütunATAMA ve Çevir.

Aşağıdaki tablo geçerli değildir ve 0 ya da bir hata döndürür, giriş ifade biçimleri özetlemektedir.

ISDATE ifade

ISDATE dönüş değeri

null

0

Veri türü değerleri içinde listeleniyorVeri türleri bir veri türü kategorisinde farklı karakter dizesi, Unicode karakter dizeleri ya da tarih ve saat.

0

Değerleri text,ntext, orimageveri türü.

0

Any value that has a seconds precision scale greater than 3, (.0000 through .0000000...n)

0

Geçerli bir tarih geçersiz bir değer, örneğin 1995-10-1a eklenen herhangi bir değer.

0

Örnekler

C.ISDATE geçerli tarih/saat ifade için test etmek için kullanma

Aşağıdaki örnek nasıl kullanılacağını gösterirISDATEsınama olup bir karakter dizesi geçerli değildatetime.

IF ISDATE('2009-05-12 10:19:41.177') = 1
    PRINT 'VALID'
ELSE
    PRINT 'INVALID'

b.Dönüş değerleri küme DATEFORMAT ve küme LANGUAGE ayarlarının etkilerini gösteren

Aşağıdaki ayarları sonucunda döndürülen değerleri gösterSET DATEFORMATveSET LANGUAGE.

/* Use these sessions settings. */
SET LANGUAGE us_english;
SET DATEFORMAT mdy;
/* Expression in mdy dateformat */
SELECT ISDATE('04/15/2008'); --Returns 1.
/* Expression in mdy dateformat */
SELECT ISDATE('04-15-2008'); --Returns 1. 
/* Expression in mdy dateformat */
SELECT ISDATE('04.15.2008'); --Returns 1. 
/* Expression in myd  dateformat */
SELECT ISDATE('04/2008/15'); --Returns 1.

SET DATEFORMAT mdy;
SELECT ISDATE('15/04/2008'); --Returns 0.
SET DATEFORMAT mdy;
SELECT ISDATE('15/2008/04'); --Returns 0.
SET DATEFORMAT mdy;
SELECT ISDATE('2008/15/04'); --Returns 0.
SET DATEFORMAT mdy;
SELECT ISDATE('2008/04/15'); --Returns 1.

SET DATEFORMAT dmy;
SELECT ISDATE('15/04/2008'); --Returns 1.
SET DATEFORMAT dym;
SELECT ISDATE('15/2008/04'); --Returns 1.
SET DATEFORMAT ydm;
SELECT ISDATE('2008/15/04'); --Returns 1.
SET DATEFORMAT ymd;
SELECT ISDATE('2008/04/15'); --Returns 1.

SET LANGUAGE English;
SELECT ISDATE('15/04/2008'); --Returns 0.
SET LANGUAGE Hungarian;
SELECT ISDATE('15/2008/04'); --Returns 0.
SET LANGUAGE Swedish;
SELECT ISDATE('2008/15/04'); --Returns 0.
SET LANGUAGE Italian;
SELECT ISDATE('2008/04/15'); --Returns 1.

/* Return to these sessions settings. */
SET LANGUAGE us_english;
SET DATEFORMAT mdy;

See Also

Reference