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.
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;