Partager via


Fonctions de chaîne (Entity SQL)

Le fournisseur de données .NET Framework pour SQL Server (SqlClient) propose des fonctions String qui effectuent des opérations sur une valeur d'entrée String et retournent une valeur de résultat String ou numérique. Ces fonctions se trouvent dans l'espace de noms SqlServer, lequel est disponible lorsque vous utilisez SqlClient. La propriété d'espace de noms d'un fournisseur permet à Entity Framework de découvrir le préfixe attribué par ce fournisseur à des constructions spécifiques, telles que des types et des fonctions.

Le tableau suivant présente les fonctions String SqlClient.

Fonction Description

ASCII( expression )

Retourne la valeur du code ASCII du caractère placé le plus à gauche d'une expression de chaîne.

Arguments

expression : toute expression valide d'un type String ASCII.

Valeur de retour

Int32.

Exemple

SqlServer.ASCII('A')

CHAR( expression )

Convertit un code Int32 en chaîne (String) ASCII.

Arguments

expression : valeur Int32.

Valeur de retour

String ASCII.

Exemple

SqlServer.char(97)

CHARINDEX( expression1, expression2 [, start_location])

Retourne la position de départ, dans une chaîne de caractères, de l'expression spécifiée.

Arguments

expression1 : expression qui contient la séquence de caractères à rechercher. L'expression peut être de type chaîne (String, ASCII ou Unicode) ou de type binaire (Binary).

expression2 : expression, généralement une colonne, dans laquelle rechercher la séquence spécifiée. L'expression peut être de type chaîne (String, ASCII ou Unicode) ou de type binaire (Binary).

start_location : (facultatif) Valeur Int64 (non retournée dans SQL Server 2000) ou Int32 qui représente la position de caractère à partir de laquelle rechercher expression1 dans expression2. Si start_location n'est pas spécifié ou qu'il est un nombre négatif ou égal à zéro, la recherche commence au début de l'expression2.

Valeur de retour

Int32.

Exemple

SqlServer.CHARINDEX('h', 'habcdefgh', 2)

DIFFERENCE( expression, expression )

Compare les valeurs SOUNDEX de deux chaînes et évalue leur ressemblance.

Arguments

Type String ASCII ou Unicode. expression peut être une constante, une variable ou une colonne.

Valeur de retour

Retourne un Int32 qui représente la différence entre les valeurs SOUNDEX de deux expressions de caractères. La plage est comprise entre 0 et 4. 0 indique une similarité nulle ou faible et 4 indique une forte similarité ou des valeurs identiques.

Exemple

// The following example returns a DIFFERENCE value of 4,

//the least possible difference or the best match.

SqlServer.DIFFERENCE('Green','Greene');

LEFT( expression, count )

Retourne la partie de gauche d'une chaîne de caractères avec le nombre spécifié de caractères.

Arguments

expression : type String Unicode ou ASCII. Utilisez la fonction CAST pour convertir explicitement character_expression.

count : type Int64 (non retourné dans SQL Server 2000) ou Int32 qui spécifie le nombre de caractères de character_expression à retourner.

Valeur de retour

Valeur String Unicode ou ASCII.

Exemple

SqlServer.LEFT('SQL Server', 4)

LEN( expression )

Retourne le nombre de caractères de l'expression de type String spécifiée, à l'exception des espaces de droite.

Arguments

expression : expression d'un type String (Unicode ou ASCII) ou d'un type Binary.

Valeur de retour

Int32.

Exemple

SqlServer.LEN('abcd')

LOWER( expression )

Retourne une expression de type String après avoir converti les caractères majuscules en caractères minuscules.

Arguments

expression: toute expression valide du type String.

Valeur de retour

String.

Exemple

SqlServer.LOWER('AbB')

LTRIM( expression )

Retourne une expression String après avoir supprimé les espaces de début.

Arguments

expression : toute expression valide de type String.

Valeur de retour

String.

Exemple

SqlServer.LTRIM(' d')

NCHAR( expression )

Retourne une chaîne (String) Unicode avec le code d'entier spécifié, tel que défini dans la norme Unicode.

Arguments

expression : valeur Int32.

Valeur de retour

String Unicode.

Exemple

SqlServer.NCHAR(65)

PATINDEX( '%pattern%', expression)

Retourne la position de départ de la première occurrence d'un modèle dans une expression String spécifiée.

Arguments

'%pattern%' : type String ASCII ou Unicode. Vous pouvez utiliser des caractères génériques ; toutefois, le caractère % doit précéder et suivre le modèle (sauf lors de recherches des premiers ou derniers caractères).

expression : String ASCII ou Unicode où rechercher le modèle spécifié.

Valeur de retour

Int32.

Exemple

SqlServer.PATINDEX('abc', 'ab')

QUOTENAME( 'char_string' [, 'quote_char'])

Retourne une chaîne (String) Unicode avec les délimiteurs ajoutés afin que la chaîne d'entrée soit un identificateur délimité SQL Server 2005 valide.

Arguments

char_string : chaîne String Unicode.

quote_char : chaîne d'un seul caractère à utiliser en tant que délimiteur. Il peut s'agir d'une apostrophe ( ' ), d'un crochet gauche ou droit ( [ ] ) ou d'un guillemet double ( " ). Si quote_char n'est pas spécifié, les crochets sont utilisés.

Valeur de retour

String Unicode.

Exemple

SqlServer.QUOTENAME('abc[]def')

REPLACE( expression1, expression2, expression3)

Répète une expression de caractères le nombre de fois indiqué.

Arguments

expression1 : expression de chaîne à rechercher. string_expression1 peut être d'un type String Unicode ou ASCII.

expression2 : sous-chaîne à rechercher. string_expression2 peut être d'un type String Unicode ou ASCII.

expression3 : la chaîne de remplacement. string_expression3 peut être d'un type String Unicode ou ASCII.

Exemple

SqlServer.REPLACE('aabbcc', 'bc', 'zz')

REPLICATE( char_expression, int_expression)

Répète une expression de caractères le nombre de fois indiqué.

Arguments

char_expression : type String Unicode ou ASCII.

int_expression : valeur Int64 (non prise en charge dans SQL Server 2000) ou Int32.

Valeur de retour

Type String Unicode ou ASCII.

Exemple

SqlServer.REPLICATE('aa',2)

REVERSE( expression )

Retourne des données de type String Unicode ou ASCII dans une chaîne reprenant dans l'ordre inverse les caractères de la chaîne d'entrée.

Arguments

expression : type String Unicode ou ASCII.

Valeur de retour

Type String Unicode ou ASCII.

Exemple

SqlServer.REVERSE('abcd')

RIGHT( char_expression, count)

Retourne la partie de droite d'une chaîne de caractères avec le nombre spécifié de caractères.

Arguments

char_expression : type String Unicode ou ASCII. Utilisez la fonction CAST pour convertir explicitement character_expression.

count : type Int64 (non retourné dans SQL Server 2000) ou Int32 qui spécifie le nombre de caractères de character_expression à retourner.

Valeur de retour

Type String ASCII.

Exemple

SqlServer.RIGHT('SQL Server', 6)

RTRIM( expression )

Retourne une valeur String Unicode ou ASCII après la suppression des espaces de fin.

Arguments

expression : type String Unicode ou ASCII.

Valeur de retour

Type String Unicode ou ASCII.

Exemple

SqlServer.RTRIM(' d e ')

SOUNDEX( expression )

Retourne un code de quatre caractères (SOUNDEX) pour évaluer la similarité de deux chaînes.Arguments

expression : type String Unicode ou ASCII.

Valeur de retour

Chaîne (String) ASCII. Un code de quatre caractères (SOUNDEX) est une chaîne qui évalue la similarité de deux chaînes.

Exemple

Select SqlServer.SOUNDEX('Smith'), SqlServer.SOUNDEX('Smythe') FROM {1}

Retourne

----- ----- 
S530  S530

SPACE( int_expression )

Retourne une chaîne String ASCII composée d'espaces consécutifs.

Arguments

int_expression : valeur Int64 (non retournée dans SQL Server 2000) ou Int32 qui indique le nombre d'espaces.

Valeur de retour

String ASCII.

Exemple

SqlServer.SPACE(2)

STR( float_expression [, length [, decimal]])

Retourne une valeur de type String ASCII convertie à partir de données numériques.

Arguments

float _expression : expression de type de données (Double) numérique approché avec virgule décimale.

length : (facultatif) valeur Int32 qui représente la longueur totale. Inclut le séparateur décimal, le signe, les chiffres et les espaces. La valeur par défaut est 10.

decimal : (facultatif) valeur Int32 qui représente le nombre d'emplacements à droite de la virgule décimale. decimal doit être inférieur ou égal à 16. Si decimal est supérieur à 16, le résultat est tronqué à la seizième décimale à droite du séparateur décimal.

Valeur de retour

String ASCII.

Exemple

SqlServer.STR(212.0)

STUFF( str_expression, start, length, str_expression_to_insert)

Supprime une longueur spécifique de caractères et insère un autre jeu de caractères à un point de départ spécifié dans une expression de chaîne.

Arguments

str_expression : chaîne String Unicode ou ASCII.

start: Valeur Int64 (non retournée dans SQL Server 2000) ou Int32 qui spécifie la position de départ de la suppression et de l'insertion.

length: valeur Int64 (non retournée dans SQL Server 2000) ouInt32 qui spécifie le nombre de caractères à supprimer.

str_expression_to_insert : chaîne String Unicode ou ASCII.

Valeur de retour

Valeur String Unicode ou ASCII.

Exemple

SqlServer.STUFF('abcd', 2, 2, 'zz')

SUBSTRING( str_expression, start, length)

Retourne une partie d'une expression String.

Arguments

str_expression : expression d'un type String (Unicode ou ASCII) ou d'un type Binary.

start : valeur Int64 (non retournée dans SQL Server 2000) ou Int32 qui indique où commence la sous-chaîne. 1 fait référence au premier caractère de la chaîne.

length : valeur Int64 (non retournée dans SQL Server 2000) ou Int32 qui spécifie le nombre de caractères de l'expression à retourner.

Valeur de retour

Type String (ASCII ou Unicode) ou type Binary.

Exemple

SqlServer.SUBSTRING('abcd', 2, 2)

UNICODE( expression )

Retourne la valeur entière, telle qu'elle est définie par la norme Unicode, pour le premier caractère de l'expression d'entrée.

Arguments

expression : chaîne String Unicode.

Valeur de retour

Int32.

Exemple

SqlServer.UNICODE('a')

UPPER( expression )

Retourne une expression String après conversion en majuscules des données en caractères minuscules.

Arguments

expression : expression d'un type String ASCII ou Unicode.

Valeur de retour

Type String ASCII ou Unicode.

Exemple

SqlServer.UPPER('AbB')

Pour plus d'informations sur les fonctions String prises en charge par SqlClient, voir la documentation correspondant à la version de SQL Server que vous avez spécifiée dans le manifeste du fournisseur SqlClient :

SQL Server 2000 SQL Server 2005 SQL Server 2008

Fonctions de chaîne (Transact-SQL)

Fonctions de chaîne (Transact-SQL)

Fonctions de chaîne (Transact-SQL)

Voir aussi

Concepts

Fournisseur de données .NET Framework pour SQL Server (SqlClient) pour les fonctions Entity Framework
Problèmes connus dans le fournisseur de données .NET Framework pour SQL Server (SqlClient) pour Entity Framework