Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy do:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Endpoint analityki SQL w Microsoft Fabric
Magazyn w Microsoft Fabric
Baza danych SQL w Microsoft Fabric
Zwraca wynik wyrażenia, przetłumaczony na żądany typ danych w SQL Server.
Transact-SQL konwencje składni
Składnia
PARSE ( string_value AS data_type [ USING culture ] )
Arguments
string_value
wartość nvarchar(4000) reprezentująca sformatowaną wartość do parsowania do określonego typu danych.
string_value musi być poprawną reprezentacją żądanego typu danych, inaczej PARSE wywołuje błąd.
data_type
Wartość literalna reprezentująca typ danych żądany dla wyniku.
kultury
Opcjonalny ciąg znaków identyfikujący kulturę, w której string_value jest sformatowany.
Jeśli argument kultury nie zostanie przedstawiony, używa się języka bieżącej sesji. Ten język jest ustawiany albo niejawnie, albo jawnie, za pomocą instrukcji SET LANGUAGE. kultura akceptuje każdą kulturę obsługiwaną przez .NET Framework; nie ogranicza się do języków wyraźnie obsługiwanych przez SQL Server. Jeśli argument kultury nie jest poprawny, PARSE podnosi błąd.
Typy zwracane
Zwraca wynik wyrażenia, przetłumaczony na żądany typ danych.
Uwagi
Wartości zerowe przekazywane jako argumenty do PARSE traktowane są na dwa sposoby:
Jeśli przekroczymy stałą zerową, pojawia się błąd. Wartości zerowej nie można przenieść na inny typ danych w sposób świadomy kulturowo.
Jeśli parametr o wartości zerowej zostanie przekazany w czasie wykonywania, zwraca się wartość zerowa, aby uniknąć anulowania całej partii.
Używaj PARSE tylko do konwersji ciągu na datę/czas i typy liczb. Do konwersji typów ogólnych nadal używaj CAST lub CONVERT. Pamiętaj, że przy analizie wartości ciągu wiąże się pewien narzut wydajnościowy.
PARSE opiera się na obecności środowiska uruchomieniowego .NET Framework Common Language Runtime (CLR).
Ta funkcja nie będzie zdalna, ponieważ zależy od obecności CLR. Zdalne odłączanie funkcji wymagającej CLR powodowałoby błąd na serwerze zdalnym.
Więcej informacji o parametrze data_type
Wartości parametru data_type są ograniczone do typów pokazanych w poniższej tabeli, wraz ze stylami. Informacje o stylu pomagają określić, jakie wzory są dozwolone. Więcej informacji o stylach można znaleźć w dokumentacji .NET Framework dotyczącej wyliczeń System.Globalization.NumberStyles i DateTimeStyles .
| Kategoria | Typ | Typ programu .NET Framework | Style używane |
|---|---|---|---|
| Numeric | bigint | Int64 | NumberStyles.Number |
| Numeric | int | Int32 | NumberStyles.Number |
| Numeric | smallint | Int16 | NumberStyles.Number |
| Numeric | tinyint | Byte | NumberStyles.Number |
| Numeric | liczba dziesiętna | Decimal | NumberStyles.Number |
| Numeric | numeryczny | Decimal | NumberStyles.Number |
| Numeric | float | Double | NumberStyles.Float |
| Numeric | real | Single | NumberStyles.Float |
| Numeric | smallmoney | Decimal | NumberStyles.Currency |
| Numeric | pieniądze | Decimal | NumberStyles.Currency |
| Data i godzina | date | DateTime | DateTimeStyles.AllowWhiteSpaces | DateTimeStyles.AssumeUniversal |
| Data i godzina | time | TimeSpan | DateTimeStyles.AllowWhiteSpaces | DateTimeStyles.AssumeUniversal |
| Data i godzina | data/godzina | DateTime | DateTimeStyles.AllowWhiteSpaces | DateTimeStyles.AssumeUniversal |
| Data i godzina | smalldatetime | DateTime | DateTimeStyles.AllowWhiteSpaces | DateTimeStyles.AssumeUniversal |
| Data i godzina | datetime2 | DateTime | DateTimeStyles.AllowWhiteSpaces | DateTimeStyles.AssumeUniversal |
| Data i godzina | datetimeoffset | DateTimeOffset | DateTimeStyles.AllowWhiteSpaces | DateTimeStyles.AssumeUniversal |
Więcej informacji o parametrze kultury
Poniższa tabela przedstawia mapowania z języków SQL Server do kultur .NET Framework.
| Imię i nazwisko | Pseudonim | identyfikator LCID | Kultura specyficzna |
|---|---|---|---|
| us_english | angielski | 1033 | en-US |
| Deutsch | Niemiecki | 1031 | de-DE |
| Français | Francuski | 1036 | fr-FR |
| 日本語 | Japoński | 1041 | ja-JP |
| Dansk | Duński | 1030 | da-DK |
| Español | Hiszpański | 3082 | es-ES |
| Italiano | Włoski | 1040 | it-IT |
| Nederlands | Niderlandzki | 1043 | nl-NL |
| Norsk | Norweski | 2068 | nn-NO |
| Português | Portugalski | 2070 | pt-PT |
| Suomi | Fiński | 1035 | fi-FI |
| Svenska | Szwedzki | 1053 | sv-SE |
| język czeski | Czeski | 1029 | Cs-CZ |
| węgierski | Węgierski | 1038 | Hu-HU |
| polski | Polski | 1045 | Pl-PL |
| română | Rumuński | 1048 | Ro-RO |
| hrvatski | Chorwacki | 1050 | hr-HR |
| slovenčina | Słowacki | 1051 | Sk-SK |
| Slovenski | Słoweński | 1060 | Sl-SI |
| ελληνικά | Grecki | 1032 | El-GR |
| български | Bułgarski | 1026 | bg-BG |
| русский | Rosyjski | 1049 | Ru-RU |
| Türkçe | Turecki | 1055 | Tr-TR |
| Brytyjski | Brytyjski angielski | 2057 | en-GB |
| eesti | Estoński | 1061 | Et-EE |
| latviešu | Łotewski | 1062 | lv-LV |
| lietuvių | Litewski | 1063 | lt-LT |
| Português (Brazylia) | Brazylijski | 1046 | pt-BR |
| 繁體中文 | Chiński tradycyjny | 1028 | zh-TW |
| 한국어 | Koreański | 1042 | Ko-KR |
| 简体中文 | Chiński (uproszczony) | 2052 | zh-CN |
| Arabski język | Arabski język | 1025 | ar-SA |
| ไทย | Tajska | 1054 | Th-TH |
Przykłady
A. PARSE na datetime2
SELECT PARSE('Monday, 13 December 2010' AS datetime2 USING 'en-US') AS Result;
Oto zestaw wyników.
Result
---------------
2010-12-13 00:00:00.0000000
(1 row(s) affected)
B. PARSE z symbolem walutowym
SELECT PARSE('€345,98' AS money USING 'de-DE') AS Result;
Oto zestaw wyników.
Result
---------------
345.98
(1 row(s) affected)
C. PARSE z ukrytym uwarunkowaniem języka
-- The English language is mapped to en-US specific culture
SET LANGUAGE 'English';
SELECT PARSE('12/16/2010' AS datetime2) AS Result;
Oto zestaw wyników.
Result
---------------
2010-12-16 00:00:00.0000000
(1 row(s) affected)