Konstanten (Datenbankmodul)
Eine Konstante ist ein Symbol, das einen bestimmten Datenwert darstellt. Das Format einer Konstante ist abhängig vom Datentyp des Werts, den sie repräsentiert. Konstanten werden auch als Literale bezeichnet. In den folgenden Tabellen sind Beispiele für die Verwendung von Konstanten dargestellt.
Konstanten verwendet in |
Beispiel |
---|---|
Zeichenfolgen |
'O''Brien' 'The level for job_id: %d should be between %d and %d.' |
Unicode-Zeichenfolgen |
N'Michl' |
Binäre Zeichenfolgenkonstanten |
0x12Ef 0x69048AEFDD010E |
bit-Konstanten |
0 - Oder - 1 |
datetime-Konstanten |
'April 15, 1998' '04/15/98' '14:30:24' '04:24 PM' |
integer-Konstanten |
1894 2 |
decimal-Konstanten |
1894.1204 2.0 |
float- und real-Konstanten |
101.5E5 0.5E-2 |
money-Konstanten |
$12 $542023.14 |
uniqueidentifier-Konstanten |
0xff19966f868b11d0b42d00c04fc964ff '6F9619FF-8B86-D011-B42D-00C04FC964FF' |
Bei numerischen Konstanten verwenden Sie die unären Operatoren + und - zur Angabe des Vorzeichens für den numerischen Wert:
+$156.45
-73.52E8
-129.42
+442
Zeichenkonstanten und Unicode-Konstanten wird die Standardsortierung der aktuellen Datenbank zugewiesen, es sei denn, Sie weisen mithilfe der COLLATE-Klausel eine spezielle Sortierung zu. Beispiel:
'abc' COLLATE French_CI_AI
N'lustig' COLLATE German_Phonebook_CS_AS
Verwenden von Konstanten in Transact-SQL
In Transact-SQL stehen zahlreiche Möglichkeiten zum Verwenden von Konstanten zur Verfügung. Es folgen einige Beispiele:
Als Konstantenwert in einem arithmetischen Ausdruck:
SELECT Price + $.10 FROM MyTable
Als Datenwert einer Spalte, die in einer WHERE-Klausel verglichen wird:
SELECT * FROM MyTable WHERE LastName = 'O''Brien'
Als Datenwert, der einer Variablen zugewiesen werden soll:
SET @DecimalVar = -1200.02
Als Datenwert, der in eine Spalte der aktuellen Zeile eingefügt werden soll. Dies wird mit der SET-Klausel der UPDATE-Anweisung oder der VALUES-Klausel einer INSERT-Anweisung angegeben.
UPDATE MyTable SET Price = $99.99 WHERE PartNmbr = 1234 INSERT INTO MyTable VALUES (1235, $88.88)
Als Zeichenfolge, die den Text der mit einer PRINT- oder RAISERROR-Anweisung ausgegebenen Meldung angibt:
PRINT 'This is a message.'
Als Wert, nach dem ein Test in einer bedingten Anweisung durchgeführt wird, wie z. B. in einer IF-Anweisung oder in CASE-Funktionen:
IF (@@SALESTOTAL > $100000.00) EXECUTE Give_Bonus_Procedure
Siehe auch