FirebirdSQL logo

Informations générales

Pour commencer, lisez quelques notes sur certaines des caractéristiques sous-jacentes à l’implémentation du langage de Firebird.

SQL Sous-ensembles

SQL comporte quatre sous-ensembles de SQL utilisés dans diverses applications :

DSQL

SQL dynamique.

PSQL

SQL procédurale.

ESQL

SQL embarquée.

ISQL

SQL interactive.

Dynamic SQL est une partie essentielle du langage qui est conforme à la partie 2 (SQL/Foundation – SQL/Basics) de la spécification SQL. DSQL est une construction transmise par les applications clientes à l’aide de l’API Firebird et traitée par le serveur de base de données.

SQL procédural est une extension de Dynamic SQL, qui contient en outre des instructions composites contenant des variables locales, des affectations, des boucles et d’autres constructions procédurales. PSQL fait référence à la partie 4 (SQL/PSM) de la spécification SQL. Initialement, l’extension PSQL n’était disponible que dans des modules (procédures et déclencheurs) stockés en permanence dans la base de données, mais relativement récemment, ils sont également devenus disponibles dans Dynamic SQL (voir EXECUTE BLOCK).

Embedded SQL définit un sous-ensemble de DSQL pris en charge par Firebird GPRE. GPRE est une application de préprocesseur qui vous permet d’intégrer des constructions SQL dans votre langage de programmation immédiat (C, C++, Pascal, Cobol, etc.) et de traiter ces constructions intégrées dans les appels d’API Firebird corrects. Notez qu’ESQL ne prend en charge qu’un sous-ensemble de constructions et d’expressions DSQL.

Interactive SQL fait référence à un langage qui peut être utilisé pour travailler avec l’application de ligne de commande Firebird ISQL pour un accès interactif aux bases de données. isql est une application cliente régulière. Pour lui, le langage habituel est le langage DSQL. Cependant, l’application prend en charge quelques commandes supplémentaires.

Les sous-ensembles de langage de DSQL et PSQL sont entièrement représentés dans ce guide. De la boîte à outils, ni ESQL ni ISQL ne sont décrits séparément ici, sauf indication explicite.