Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
Database SQL di
AzureIstanza gestita di SQL di
AzureAzure Synapse Analytics
Endpoint di analisi SQL in Microsoft Fabric
Warehouse in Microsoft Fabric
Database SQL in Microsoft Fabric
Restituisce il risultato di un'espressione, tradotto nel tipo di dato richiesto, oppure NULL se il cast fallisce in SQL Server. Usa TRY_PARSE solo per convertire da stringhe a dati/ore e tipi numerici.
Convenzioni relative alla sintassi Transact-SQL
Sintassi
TRY_PARSE ( string_value AS data_type [ USING culture ] )
Argomenti
string_value
Valore nvarchar(4000) che rappresenta il valore formattato da analizzare nel tipo di dati specificato.
string_value deve essere una rappresentazione valida del tipo di dato richiesto, altrimenti TRY_PARSE restituisce nulla.
data_type
Valore letterale che rappresenta il tipo di dati richiesto per il risultato.
Impostazioni cultura
Stringa facoltativa che identifica le impostazioni cultura in cui viene formattato string_value.
Se l'argomento delle impostazioni cultura non viene specificato, viene usata la lingua della sessione corrente. Questo linguaggio è impostato implicitamente o esplicitamente usando l'affermazione SET LANGUAGE .
la cultura accetta qualsiasi cultura supportata dal .NET Framework. Non è limitato ai linguaggi esplicitamente supportati da SQL Server. Se l'argomento delle impostazioni cultura non è valido, PARSE genera un errore.
Tipi restituiti
Restituisce il risultato dell'espressione, tradotto nel tipo di dato richiesto, oppure NULL se il cast fallisce.
Osservazioni:
Usa TRY_PARSE solo per convertire da stringhe a dati/ore e tipi numerici. Per conversioni generali di tipo, continuare a usare CAST o CONVERT. Tieni presente che c'è un certo overhead di performance nell'analisi del valore della stringa.
TRY_PARSE si basa sulla presenza del linguaggio comune di esecuzione (CLR) .NET Framework.
Questa funzione non può essere remota perché dipende dalla presenza di CLR. L'esecuzione in modalità remota di una funzione che richiede CLR provocherebbe un errore sul server remoto.
Ulteriori informazioni sul parametro data_type
I valori per il parametro data_type sono limitati ai tipi visualizzati nella tabella seguente, insieme con gli stili. Le informazioni sugli stili vengono fornite per determinare i tipi di modelli consentiti. Per maggiori informazioni sugli stili, consulta la documentazione di .NET Framework per le System.Globalization.NumberStyles enumerazioni e DateTimeStyles .
| Categoria | Type | Tipo .NET | Stili utilizzati |
|---|---|---|---|
| Numerico | bigint | Int64 |
NumberStyles.Number |
| Numerico | int | Int32 |
NumberStyles.Number |
| Numerico | smallint | Int16 |
NumberStyles.Number |
| Numerico | tinyint | Byte |
NumberStyles.Number |
| Numerico | decimal | Decimal |
NumberStyles.Number |
| Numerico | numeric | Decimal |
NumberStyles.Number |
| Numerico | float | Double |
NumberStyles.Float |
| Numerico | reale | Single |
NumberStyles.Float |
| Numerico | smallmoney | Decimal |
NumberStyles.Currency |
| Numerico | denaro | Decimal |
NumberStyles.Currency |
| Data e ora | date | DateTime |
DateTimeStyles.AllowWhiteSpaces | DateTimeStyles.AssumeUniversal |
| Data e ora | time | TimeSpan |
DateTimeStyles.AllowWhiteSpaces | DateTimeStyles.AssumeUniversal |
| Data e ora | datetime | DateTime |
DateTimeStyles.AllowWhiteSpaces | DateTimeStyles.AssumeUniversal |
| Data e ora | smalldatetime | DateTime |
DateTimeStyles.AllowWhiteSpaces | DateTimeStyles.AssumeUniversal |
| Data e ora | datetime2 | DateTime |
DateTimeStyles.AllowWhiteSpaces | DateTimeStyles.AssumeUniversal |
| Data e ora | datetimeoffset | DateTimeOffset |
DateTimeStyles.AllowWhiteSpaces | DateTimeStyles.AssumeUniversal |
Ulteriori informazioni sul parametro culture
Nella tabella seguente vengono mostrati i mapping dai linguaggi SQL Server alle impostazioni cultura di .NET Framework.
| Nome completo | Alias | LCID | Impostazioni cultura specifiche |
|---|---|---|---|
| us_english | italiano | 1033 | en-US |
| Deutsch | Tedesco | 1031 | de-DE |
| Français | Francese | 1036 | fr-FR |
| 日本語 | Giapponese | 1041 | ja-JP |
| Dansk | Danese | 1030 | da-DK |
| Español | Spagnolo | 3082 | es-ES |
| Italiano | Italiano | 1040 | it-IT |
| Nederlands | Olandese | 1043 | nl-NL |
| Norsk | Norvegese | 2068 | nn-NO |
| Português | Portoghese | 2070 | pt-PT |
| Suomi | Finlandese | 1035 | fi-FI |
| Svenska | Svedese | 1053 | sv-SE |
| čeština | Ceco | 1029 | Cs-CZ |
| magyar | Ungherese | 1038 | Hu-HU |
| polski | Polacco | 1045 | Pl-PL |
| română | Rumeno | 1048 | Ro-RO |
| hrvatski | Croato | 1050 | hr-HR |
| slovenčina | Slovacco | 1051 | Sk-SK |
| slovenski | Sloveno | 1060 | Sl-SI |
| ελληνικά | Greco | 1032 | El-GR |
| български | Bulgaro | 1026 | bg-BG |
| русский | Russo | 1049 | Ru-RU |
| Türkçe | Turco | 1055 | Tr-TR |
| British | Inglese (Regno Unito) | 2057 | en-GB |
| eesti | Estone | 1061 | Et-EE |
| latviešu | Lettone | 1062 | lv-LV |
| lietuvių | Lituano | 1063 | lt-LT |
| Português (Brasile) | Portoghese (Brasile) | 1046 | pt-BR |
| 繁體中文 | Cinese tradizionale | 1028 | zh-TW |
| 한국어 | Coreano | 1042 | Ko-KR |
| 简体中文 | Cinese semplificato | 2052 | zh-CN |
| Arabo | Arabo | 1025 | ar-SA |
| ไทย | Thai | 1054 | Th-TH |
Esempi
R. Esempio base di TRY_PARSE
SELECT TRY_PARSE ('Jabberwokkie' AS DATETIME2 USING 'en-US') AS Result;
Questa query restituisce un risultato di NULL.
B. Rileva i nulli con TRY_PARSE
SELECT
CASE WHEN TRY_PARSE ('Aragorn' AS DECIMAL USING 'sr-Latn-CS') IS NULL
THEN 'True'
ELSE 'False'
END AS Result;
Questa query restituisce un risultato di True.
C. Usa l'IIF con TRY_PARSE e un'impostazione implicita della cultura
SET LANGUAGE English;
SELECT IIF (TRY_PARSE ('01/01/2011' AS DATETIME2) IS NULL, 'True', 'False') AS Result;
Questa query restituisce un risultato di False.