Stałe (aparat bazy danych)
Stała to symbol, który odpowiada wartości określonych danych.Format stałych zależy od typu danych reprezentuje wartość.Stałe są również określane jako literały.W poniższej tabeli pokazano kilka przykładów użycia stałych.
Stałe używane w |
Przykład |
---|---|
Ciągi znaków |
'O''Brien' 'The level for job_id: %d should be between %d and %d.' |
Ciągi znaków Unicode |
N'Michl' |
Stałe ciąg binarny |
0x12Ef 0x69048AEFDD010E |
bit stałe |
0 lub 1 |
datetime stałe |
'April 15, 1998' '04/15/98' '14:30:24' '04:24 PM' |
integer stałe |
1894 2 |
decimal stałe |
1894.1204 2.0 |
float i real stałe |
101.5E5 0.5E-2 |
money stałe |
$12 $542023.14 |
uniqueidentifier stałe |
0xff19966f868b11d0b42d00c04fc964ff '6F9619FF-8B86-D011-B42D-00C04FC964FF' |
Stałe numeryczne, aby określić znak numeryczna wartość używać jednoargumentowy + i - operatorów:
+$156.45
-73.52E8
-129.42
+442
Stałych znaków i standardu Unicode są przypisywane domyślnym sortowaniem bieżącej bazy danych, chyba że przypisanie sortowanie określonych przy użyciu klauzula COLLATE, na przykład:
'abc' COLLATE French_CI_AI
N'lustig' COLLATE German_Phonebook_CS_AS
Używanie stałych w języku Transact-SQL
W Transact-SQL, stałe mogą być używane na wiele sposobów. Oto kilka przykładów:
Jako wartość stała w wyrażeniu arytmetyczne:
SELECT Price + $.10 FROM MyTable
Jako wartość danych kolumna, która ma być porównywane w klauzula WHERE:
SELECT * FROM MyTable WHERE LastName = 'O''Brien'
Jako wartość danych można umieścić w zmiennej:
SET @DecimalVar = -1200.02
Jako wartości danych, które powinny zostać wprowadzone kolumna bieżącego wiersza.To jest określany za pomocą klauzula zestaw instrukcja UPDATE lub klauzula VALUES instrukcji INSERT:
UPDATE MyTable SET Price = $99.99 WHERE PartNmbr = 1234 INSERT INTO MyTable VALUES (1235, $88.88)
Jako ciąg znaków, która określa tekst komunikatu, wystawiony przez PRINT lub RAISERROR instrukcja:
PRINT 'This is a message.'
Jako wartość do testowania instrukcja warunkowa, takie jak wyrażenie IF lub przypadek funkcje:
IF (@@SALESTOTAL > $100000.00) EXECUTE Give_Bonus_Procedure