Zeichenfolgenfunktionen (Entity SQL)
Der .NET Framework-Datenanbieter für SQL Server (SqlClient) stellt String-Funktionen zur Verfügung, die einen eingegebenen String verarbeiten und als Ergebnis einen String oder einen numerischen Wert zurückgeben. Diese Funktionen befinden sich im SQLServer-Namespace, der bei der Verwendung von SqlClient verfügbar ist. Anhand der Namespaceeigenschaft des Anbieters kann Entity Framework ermitteln, welches Präfix von diesem Anbieter für spezifische Konstrukte, wie Typen und Funktionen, verwendet wird.
In der folgenden Tabelle sind die SqlClient-String-Funktionen aufgeführt.
Funktion | Beschreibung |
---|---|
ASCII( expression ) |
Gibt den ASCII-Codewert für das erste Zeichen eines Zeichenfolgeausdrucks zurück. Argumente expression: Jeder gültige Ausdruck eines ASCII-String-Typs. Rückgabewert Ein Int32. Beispiel
|
CHAR( expression ) |
Konvertiert einen Int32-Code in eine ASCII-Zeichenfolge. Argumente expression: Ein Int32. Rückgabewert Ein ASCII-String. Beispiel
|
CHARINDEX( expression1, expression2 [, start_location]) |
Gibt die Anfangsposition des angegebenen Ausdrucks in einer Zeichenfolge zurück. Argumente expression1: Ein Ausdruck, der die Zeichenfolge enthält, nach der gesucht werden soll. Der Ausdruck kann eine Zeichenfolge (ASCII oder Unicode) oder binär sein. expression2: Ein Ausdruck, typischerweise eine Spalte, der nach der angegebenen Zeichenfolge durchsucht werden soll. Der Ausdruck kann eine Zeichenfolge (ASCII oder Unicode) oder binär sein. start_location: (Optional) Ein Int64 (nicht zurückgegeben in SQL Server 2000) oder Int32, der die Zeichenposition darstellt, ab der in expression2 nach expression1 gesucht wird. Wird die Startposition nicht angegeben oder ist sie ein negative Zahl bzw. null (0), wird die Suche am Anfang von expression2 gestartet. Rückgabewert Int32. Beispiel
|
DIFFERENCE( expression, expression ) |
Vergleicht die SOUNDEX-Werte von zwei Zeichenfolgen und wertet die Ähnlichkeit zwischen ihnen aus. Argumente Ein ASCII- oder Unicode-String-Typ. expression kann eine Konstante, eine Variable oder eine Spalte sein. Rückgabewert Gibt einen Int32-Wert zurück, der die Differenz zwischen den SOUNDEX-Werten zweier Zeichenausdrücke angibt. Der Wertebereich liegt zwischen 0 und 4. 0 (Null) gibt an, dass keine oder nur eine geringe Ähnlichkeit besteht, 4 weist auf eine starke Ähnlichkeit oder identische Werte hin. Beispiel
|
LEFT( expression, count ) |
Gibt den linken Teil einer Zeichenfolge mit der angegebenen Anzahl von Zeichen zurück. Argumente expression: Ein Unicode oder ASCII-Zeichenfolgentyp. Verwenden Sie die CAST-Funktion, um character_expression explizit zu ändern. count: Ein Int64-Typ (wird in SQL Server 2000 nicht zurückgegeben) oder ein Int32-Typ, der festlegt, wie viele Zeichen von character_expression zurückgegeben werden. Rückgabewert Ein Unicode- oder ASCII-String. Beispiel
|
LEN( expression ) |
Gibt die Anzahl von Zeichen im angegebenen Zeichenfolgenausdruck zurück, wobei nachfolgende Leerzeichen ausgeschlossen werden. Argumente expression: Ein Ausdruck eines String-Typs (Unicode oder ASCII) oder eines Binary-Typs. Rückgabewert Int32. Beispiel
|
LOWER( expression ) |
Gibt einen String-Ausdruck zurück, nachdem groß geschriebene Zeichendaten in klein geschriebene konvertiert wurden. Argumente expression: Ein gültiger Ausdruck des String-Typs. Rückgabewert Ein String. Beispiel
|
LTRIM( expression ) |
Gibt einen String-Ausdruck zurück, nachdem führende Leerzeichen entfernt wurden. Argumente expression: Ein gültiger Ausdruck des String-Typs. Rückgabewert Ein String. Beispiel
|
NCHAR( expression ) |
Gibt einen String (Unicode) mit dem angegebenen ganzzahligen Code gemäß der Definition durch den Unicode-Standard zurück. Argumente expression: Ein Int32. Rückgabewert Ein String (Unicode). Beispiel
|
PATINDEX( '%pattern%', expression) |
Gibt die Anfangsposition des ersten Vorkommens eines Musters in einem angegebenen String-Ausdruck zurück. Argumente '%pattern%': Ein String-Typ (ASCII oder Unicode). Platzhalterzeichen können verwendet werden. Das Zeichen "%" muss jedoch vor und nach dem Muster eingegeben werden (außer bei der Suche nach den ersten oder letzten Zeichen). expression: Ein ASCII- oder Unicode-String für die Suche nach dem angegebenen Muster. Rückgabewert Int32. Beispiel
|
QUOTENAME( 'char_string' [, 'quote_char']) |
Gibt einen String (Unicode) mit hinzugefügten Trennzeichen zurück, um die Eingabezeichenfolge als gültigen Bezeichner mit Trennzeichen für SQL Server 2005 festzulegen. Argumente char_string: Ein String (Unicode). quote_char: Eine Zeichenfolge mit einem Zeichen, das als Trennzeichen verwendet wird. Hierbei kann es sich um ein einfaches Anführungszeichen ('), eine linke oder rechte Klammer ([ ]) oder ein doppeltes Anführungszeichen (") handeln. Wenn quote_char nicht angegeben wird, werden eckige Klammern verwendet. Rückgabewert Ein String (Unicode). Beispiel
|
REPLACE( expression1, expression2, expression3) |
Wiederholt einen Zeichenausdruck so oft wie angegeben. Argumente expression1: Der Zeichenfolgenausdruck für die Suche. string_expression1 kann eine Unicode- oder ASCII-Zeichenfolge sein. expression2: Zu suchende untergeordnete Zeichenfolge. string_expression2 kann eine Unicode- oder ASCII-Zeichenfolge sein. expression3: Die Ersatzzeichenfolge. string_expression3 kann eine Unicode- oder ASCII-Zeichenfolge sein. Beispiel
|
REPLICATE( char_expression, int_expression) |
Wiederholt einen Zeichenausdruck so oft wie angegeben. Argumente char_expression: Ein Unicode- oder ASCII-String-Typ. int_expression: Int64 (wird in SQL Server 2000 nicht unterstützt) oder Int32. Rückgabewert Ein Unicode- oder ASCII-String-Typ. Beispiel
|
REVERSE( expression ) |
Gibt eine Unicode- oder ASCII-Zeichenfolge zurück, bei der die Zeichenpositionen gegenüber der Eingabezeichenfolge umgekehrt wurden. Argumente expression: Ein Unicode- oder ASCII-String-Typ. Rückgabewert Ein Unicode- oder ASCII-String-Typ. Beispiel
|
RIGHT( char_expression, count) |
Gibt den rechten Teil einer Zeichenfolge mit der angegebenen Anzahl von Zeichen zurück. Argumente char_expression: Ein Unicode- oder ASCII-Zeichenfolgentyp. Verwenden Sie die CAST-Funktion, um character_expression explizit zu ändern. count: Ein Int64-Typ (wird in SQL Server 2000 nicht zurückgegeben) oder ein Int32-Typ, der festlegt, wie viele Zeichen von character_expression zurückgegeben werden. Rückgabewert Ein ASCII-String-Typ. Beispiel
|
RTRIM( expression ) |
Gibt eine Unicode- oder ASCII-Zeichenfolge zurück, nachdem nachfolgende Leerzeichen entfernt wurden. Argumente expression: Ein Unicode- oder ASCII-String-Typ. Rückgabewert Ein Unicode- oder ASCII-String-Typ. Beispiel
|
SOUNDEX( expression ) |
Gibt einen vier Zeichen langen (SOUNDEX-) Code zurück, um die Ähnlichkeit von zwei strings.Arguments auszuwerten. expression: Ein Unicode- oder ASCII-Zeichenfolgentyp. Rückgabewert Ein ASCII-String. Ein aus vier Zeichen bestehender (SOUNDEX-) Code ist eine Zeichenfolge, die die Ähnlichkeit von zwei Zeichenfolgen auswertet. Beispiel
Rückgabewert
|
SPACE( int_expression ) |
Gibt einen ASCII-String aus mehreren Leerzeichen zurück. Argumente int_expression: Ein Int64-Wert (wird in SQL Server 2000 nicht zurückgegeben) oder ein Int32-Wert, der die Anzahl der Leerzeichen angibt. Rückgabewert Ein ASCII-String. Beispiel
|
STR( float_expression [, length [, decimal]]) |
Gibt einen ASCII-String zurück, der aus numerischen Daten konvertiert wurde. Argumente float _expression: Ein Ausdruck der ungefähren numerischen Datentypkategorie (Double) mit einem Dezimaltrennzeichen. (length: optional) Ein Int32-Wert, der die Gesamtlänge darstellt. Diese schließt Dezimaltrennzeichen, Vorzeichen, Ziffern und Leerzeichen ein. Der Standardwert beträgt 10. decimal: optional) Ein Int32, der die Anzahl der Dezimalstellen darstellt. Der Wert für "decimal" muss kleiner oder gleich 16 sein. Wenn der Wert für "decimal" höher als 16 ist, wird das Ergebnis auf sechzehn Stellen nach dem Dezimaltrennzeichen gekürzt. Rückgabewert Ein ASCII-String. Beispiel
|
STUFF( str_expression, start, length, str_expression_to_insert) |
Löscht eine angegebene Anzahl von Zeichen und fügt andere Zeichen am angegebenen Anfangspunkt in einen Zeichenfolgenausdruck ein. Argumente str_expression: Ein Unicode- oder ASCII-String. start: : Ein Int64-Wert (nicht zurückgegeben in SQL Server 2000) oder ein Int32-Wert, der die Position angibt, an der gelöscht oder eingefügt werden soll. length: Ein Int64-Wert (nicht zurückgegeben in SQL Server 2000) oder ein Int32-Wert, der die Anzahl von Zeichen angibt, die gelöscht werden sollen. str_expression_to_insert: Ein Unicode- oder ASCII-String. Rückgabewert Ein Unicode- oder ASCII-String. Beispiel
|
SUBSTRING( str_expression, start, length) |
Gibt einen Teil eines String-Ausdrucks zurück. Argumente str_expression: Ein Ausdruck eines String-Typs (Unicode oder ASCII) oder eines Binary-Typs. start: Ein Int64 (nicht zurückgegeben in SQL Server 2000) oder ein Int32, das angibt, an welcher Position die untergeordnete Zeichenfolge beginnt. 1 bezieht sich auf das erste Zeichen in der Zeichenfolge. length: Ein Int64-Wert (wird in SQL Server 2000 nicht zurückgegeben) oder ein Int32-Wert, der festlegt, wie viele Zeichen des Ausdrucks zurückgegeben werden. Rückgabewert Ein String-Typ (ASCII oder Unicode) oder ein Binary-Typ. Beispiel
|
UNICODE( expression ) |
Gibt den durch den Unicode-Standard definierten ganzzahligen Wert für das erste Zeichen des Eingabeausdrucks zurück. Argumente expression: Ein Unicode-String. Rückgabewert Ein Int32. Beispiel
|
UPPER( expression ) |
Gibt einen String-Ausdruck zurück, nachdem klein geschriebene Zeichen in groß geschriebene konvertiert wurden. Argumente expression: Ein Ausdruck eines Unicode- oder ASCII-Zeichenfolgentyps. Rückgabewert Ein String-Typ (ASCII oder Unicode). Beispiel
|
Weitere Informationen zu den von SqlClient unterstützten String-Funktionen finden Sie in der Dokumentation für die SQL Server-Version, die im SqlClient-Anbietermanifest angegeben wurde:
SQL Server 2000 | SQL Server 2005 | SQL Server 2008 |
---|---|---|
Siehe auch
Konzepte
.NET Framework-Datenanbieter für SQL Server (SqlClient) für die Entity Framework-Funktionen
Bekannte Probleme mit dem .NET Framework-Datenanbieter für SQL Server (SqlClient) für das Entity Framework