FirebirdSQL logo

Identifiants

Tous les objets de base de données ont des noms, parfois appelés identificateurs. La longueur maximale de l’identificateur est de 63 caractères. Il existe deux types d’identificateurs : les noms qui sont similaires dans la forme aux noms de variables dans les langages de programmation courants, et les noms délimités, qui sont une caractéristique distinctive du langage SQL.

Règles relatives aux identificateurs réguliers

  • La longueur de l’identificateur ne doit pas dépasser 63 caractères

  • Un nom commun doit commencer par une lettre de l’alphabet latin (les 7 premiers bits de la table ASCII), qui peut être suivie de lettres (de l’alphabet latin), de chiffres, d’un trait de soulignement et d’un signe dollar. Dans le nom, vous ne pouvez pas utiliser de lettres cyrilliques, d’espaces, d’autres caractères spéciaux. Un tel nom est insensible à la casse, il peut être écrit en minuscules et en majuscules. Les noms suivants sont les mêmes du point de vue du système :

    fullname
    FULLNAME
    FuLlNaMe
    FullName
Syntaxe des identificateurs réguliers
<name> ::=
  <letter> | <name><letter> | <name><digit> | <name>_ | <name>$

<letter> ::= <upper letter> | <lower letter>

<upper letter> ::= A | B | C | D | E | F | G | H | I | J | K | L | M |
                   N | O | P | Q | R | S | T | U | V | W | X | Y | Z

<lower letter> ::= a | b | c | d | e | f | g | h | i | j | k | l | m |
                   n | o | p | q | r | s | t | u | v | w | x | y | z

<digit> ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

Règles relatives aux identificateurs délimités

  • La longueur de l’identificateur ne doit pas dépasser 63 caractères.

  • Le nom doit être placé entre guillemets doubles, par exemple."anIdentifier"

  • L’identificateur peut contenir n’importe quel caractère du jeu de caractères UTF-8, y compris des caractères accentués, des espaces et des caractères spéciaux.

  • L’identificateur peut être un mot réservé.

  • Les identificateurs délimités sont sensibles à la casse dans tous les contextes.

  • Les espaces de fin dans les noms délimités sont ignorés, comme pour toute constante de chaîne.

  • Les identificateurs délimités ne sont disponibles que dans le dialecte 3. Pour plus d’informations sur les dialectes, consultez Dialectes SQL

Syntaxe d’identificateur délimité
<delimited name> ::= "<permitted_character>[<permitted_character> ...]"
Note

Un identificateur délimité, tel que , est le même que les identificateurs réguliers, , , etc. La raison en est que Firebird stocke les identificateurs réguliers en majuscules, quelle que soit la façon dont ils ont été définis ou déclarés. Les identificateurs délimités sont toujours conservés car ils ont été définis ou déclarés. Par conséquent, l’identificateur (entre guillemets) est différent de (sans guillemets), qui est stocké dans les métadonnées sous la forme ."FULLNAME" - FULLNAME - fullname - FullName - "FullName" - FULLNAME

Littéraux

Les littéraux sont utilisés pour représenter directement les données. Voici des exemples de littéraux standard :

  • entiers — 0, -34, 45, 0X080000000;

  • les nombres à points fixes sont 0,0, -3,14.

  • matériel — 3.23e-23;

  • string — 'text', 'don’t!', Q'{don’t!}';

  • les chaînes binaires sont x'48656C6C6F20776F726C64';

  • date — DATE '10.01.2014';

  • heure — HEURE '15:12:56';

  • date et heure — TIMESTAMP '10.01.2014 13:32:02';

  • logique — VRAI, FAUX, INCONNU;

  • l’état non défini est null.

Pour plus d’informations sur les littéraux pour chaque type de données, consultez Types et sous-types de données.

Opérateurs et caractères spéciaux

Il existe un ensemble de caractères spéciaux utilisés comme délimiteurs.

<special char> ::=
    <space> | " | % | & | ' | ( | ) | * | + | , | -
  | . | / | : | ; | < | = | > | ? | [ | ] | ^ | { | }

Certains de ces caractères, ainsi que leurs combinaisons, peuvent être utilisés comme opérateurs (arithmétique, chaîne, logique), comme délimiteurs de commandes SQL, comme identificateurs de quota et pour indiquer les limites des littéraux de chaîne ou des commentaires.

Syntaxe de l’opérateur
<operator> ::=
    <string concatenation operator>
  | <arithmetic operator>
  | <comparison operator>
  | <logical operator>

<string concatentation operator> ::= "||"

<arithmetic operator> ::= * | / | + | - |

<comparison operator> ::=
    =  | <> | != | ~= | ^= | > | < | >= | <=
  | !> | ~> | ^> | !< | ~< | ^<

<logical operator> ::= NOT | AND | OR

Pour plus d’informations sur les opérateurs, consultez Expressions.

Commentaires

Dans les scripts SQL, les instructions SQL et les modules PSQL, il peut y avoir des commentaires. Un commentaire est un texte libre spécifié par l’utilisateur, destiné à expliquer le fonctionnement de parties individuelles du programme. L’analyseur ignore le texte du commentaire.

Firebird prend en charge deux types de commentaires : le bloc et le commentaire à ligne unique.

Syntaxe
<comment> ::= <block comment> | <single-line comment>

<block comment> ::=
  /* <character>[<character> ...] */

<single-line comment> ::=
  -- <character>[<character> ...]<end line>

Les commentaires de bloc commencent par des caractères /* et se terminent par des caractères`*/. Les commentaires de bloc peuvent contenir du texte de longueur arbitraire et s’étendre sur plusieurs lignes./*``*/`

Les commentaires d’une seule ligne commencent par des caractères -- et sont valides jusqu’à la fin de la ligne en cours.

Example 1. Exemple 1. Commentaires
CREATE PROCEDURE P(APARAM INT)
  RETURNS (B INT)
AS
BEGIN
  /* Ce texte ne sera pas pris en compte.
      pendant le déroulement de la procédure, car est un commentaire
  */
  B = A + 1; -- Commentaire d'une ligne
  SUSPEND;
END