Stałe (Transact-SQL)
Symbol, który odpowiada wartości określonych danych jest stała, znany także jako literału lub wartość wartość skalarna .Format stała zależy od typu danych wartość, którą on reprezentuje.
Stałe ciąg znaków
Stałe ciąg znaków ujęty w znaki pojedynczego cudzysłowu i zawierają znaki alfanumeryczne (a–z, A–z i 0-9) i znaki specjalne, takie jak wykrzyknik (!), znaku (@) oraz numer rejestracji (#).Stałe ciąg znaków przypisywane są domyślne sortowanie bieżącej bazy danych, chyba że klauzula COLLATE służy do określania sortowanie.Ciągi znaków wpisanych przez użytkowników oceniane są poprzez strona kodowa na komputerze i są tłumaczone na domyślny bazy danych strona kodowa , jeśli jest wymagane.Jeśli opcja QUOTED_IDENTIFIER została zestaw dla połączenia, ciągi znaków może być ujęty w znaki cudzysłowu, ale Microsoft SQL Server macierzystego dostawcy klienta i sterownika ODBC automatycznie użyj Ustaw QUOTED_IDENTIFIER na.Zaleca się znaki pojedynczego cudzysłowu.
Jeśli znak ciąg ujęty w znaki pojedynczego cudzysłowu zawiera osadzony znak cudzysłowu, reprezentują osadzony pojedynczy znak cudzysłowu z dwa znaki pojedynczego cudzysłowu.Nie jest to wymagane w ciągach znaków osadzonych w podwójny cudzysłów.
Oto przykłady ciągów znaków:
'Cincinnati' 'O''Brien' 'Process X is 50% complete.' 'The level for job_id: %d should be between %d and %d.' "O'Brien"
Puste ciągi są przedstawiane jako dwa znaki pojedynczego cudzysłowu pustą między nimi.W trybie zgodności 6.x pusty ciąg jest traktowana jako pojedyncza spacja.
Stałe ciąg znaków obsługują rozszerzone sortowania.
Ostrzeżenie
Znak większe niż 8000 bajtów są wpisywane jako stałe varchar(max) danych.
Ciągi znaków Unicode
Ciągi znaków Unicode mają format podobny do ciągów znaków, ale są poprzedzone identyfikator N (N oznacza krajowe języka SQL-92 standardowego).Prefiks n muszą być wielkimi literami.Na przykład "Michél" jest znak stała podczas N 'michél' jest Unicode stała.Stałe Unicode są interpretowane jako dane Unicode i nie są sprawdzane przy użyciu strona kodowa.Stałe Unicode mają sortowanie.To sortowanie steruje przede wszystkim przypadek czułości i porównań.Stałe Unicode przypisywane są domyślne sortowanie bieżącej bazy danych, chyba że klauzula COLLATE służy do określania sortowanie.Unicode, dane są przechowywane przy użyciu 2 bajty na znak zamiast 1 bajcie na znak danych znakowych.Aby uzyskać więcej informacji, zobacz Przy użyciu danych Unicode.Stałe ciąg Unicode obsługują rozszerzone sortowania.
Ostrzeżenie
Stałe Unicode większych niż 8000 bajtów są wpisywane jako nvarchar(max) danych.
Stałe binarne
Stałe binarne mają prefiks 0x i ciąg liczb szesnastkowych.Nie są ujęte w znaki cudzysłowu.Poniżej przedstawiono przykłady ciągów binarnych, są:
0xAE 0x12Ef 0x69048AEFDD010E 0x (empty binary string)
Ostrzeżenie
Stałe binarne większe niż 8000 bajtów są wpisywane jako varbinary(max) danych.
bit stałe
bit stałe są reprezentowane przez liczby 0 lub 1 i nie są ujęte w cudzysłów.Jeśli używana jest większy niż liczba, jest konwertowany na jeden.datetimestałe
datetimestałe są reprezentowane za pomocą znaków wartości data w określonych formatach, ujęta w znaki cudzysłowu pojedynczego.Aby uzyskać więcej informacji na temat formatów dla datetime stałe, zobacz Data i czas danych.Oto przykłady datetime stałych:
'December 5, 1985' '5 December, 1985' '851205' '12/5/98'
Przykłady stałych czas :
'14:30:24' '04:24 PM'
integerstałe
integerstałe są reprezentowane przez ciąg liczb, które nie są ujęte w cudzysłów i nie zawierają punktów dziesiętnych.integerstałe muszą być liczbami całkowitymi; nie mogą zawierać miejsca po przecinku.Oto przykłady integer stałych:
1894 2
decimalstałe
decimalstałe są reprezentowane przez ciąg liczb, które nie są ujęte w cudzysłów i zawierać przecinka dziesiętnego.Oto przykłady decimal stałych:
1894.1204 2.0
floati real stałe
floati real stałe są przedstawiane przy użyciu notacji naukowej.Oto przykłady float lub real wartości:
101.5E5 0.5E-2
moneystałe
moneystałe są przedstawiane jako ciąg liczb z opcjonalnym przecinka dziesiętnego i symbolu opcjonalne waluty jako prefiks.Money constantsare nie jest ujęty w cudzysłów.SQL Servernie Wymuszaj wszelkiego rodzaju reguł grupowanie , takich jak wstawianie każdych trzech znaków w ciągach znaków, które reprezentują pieniędzy przecinek (,).
Ostrzeżenie
Przecinki są ignorowane w dowolne miejsce w określonym money literal.
Oto przykłady money stałych:
$12 $542023.14
uniqueidentifierstałe
uniqueidentifierstałe są ciąg reprezentujący identyfikatora GUID.Mogą one być określone w znak lub ciąg binarny format.Poniższe przykłady zarówno określić ten sam identyfikator GUID:
'6F9619FF-8B86-D011-B42D-00C04FC964FF' 0xff19966f868b11d0b42d00c04fc964ff
Określanie negatywnych i pozytywnych liczb
Aby wskazać, czy liczba jest dodatnia lub ujemna, stosuje się + lub — operatory jednoargumentowe liczbową stała.Tworzy liczbowe wyrażenie reprezentujący podpisane wartość liczbową.Stałe numeryczne używane dodatnie podczas + lub — operatory jednoargumentowe nie są stosowane.
Podpisany integer wyrażeń:
+145345234 -2147483648
Podpisany decimal wyrażeń:
+145345234.2234 -2147483648.10
Podpisany float wyrażeń:
+123E-3 -12E5
Podpisany money wyrażeń:
-$45.56 +$423456.99
Ulepszone sortowanie
SQL Serwer obsługuje znak i stałych ciąg Unicode, które obsługują rozszerzone sortowania.Aby uzyskać więcej informacji, zobacz SORTOWANIE (Transact-SQL) klauzula.
Zobacz także