SQL Generator
Présentation
SQL
Le générateur SQL en mode procedural peut générer les fichiers suivants :
- Un fichier de définition des tables pour toutes les classes persistées du modèle.
- Un fichier de définition des contraintes de clés étrangères, d'unicité, et les indexes du modèles.
- Un fichier d'insertion des valeurs pour toutes les classes persistées du modèle qui ont des
values. - Un fichier d'insertion des traductions dans les tables de traduction (si
translatePropertiesoutranslateReferencessont àtrue). - Un fichier de définition des types toutes les classes persistées du modèle, ainsi que pour leurs colonnes (
sqlserveruniquement). - Un fichier d'insertion des commentaires pour toutes les classes persistées du modèle, ainsi que pour leurs colonnes (
postgresqluniquement).
Les 5 premiers fichiers seront générés automatiquement selon les besoins du modèle et de la configuration (les fichiers ont des noms par défaut), tandis que le fichier de commentaire ne sera généré que si son nom est renseigné dans la configuration.
SSDT
Le générateur SQL en mode ssdt peut générer les fichiers suivants :
- Un fichier par classe
- Un fichier par type de table SQL, pour les tables qui en ont besoin (si propriété
InsertKeyprésente) - Un fichier par liste de référence à initialiser
- Le fichier d'initialisation des listes de référence, qui appelle, dans l'ordre, tous les fichiers d'initialisation
Configuration
Remarque : A l'inverse de tous les autres générateurs, le générateur SQL est configuré avec ignoreDefaultValues: true par défaut
Fichier de configuration
-
targetDBMS: Système de gestion de base de données cible ("postgre"ou"sqlserver"ou"oracle"). -
proceduralOptions de génération sql
tablesFileName: Nom du fichier contenant le script de création de tables. Par défaut :01_tables.sql.indexesAndKeysFileName: Nom du fichier contenant le script de création des indexes et des clés étrangères et uniques. Par défaut :02_indexes_and_keys.sql.valuesFileName: Nom du fichier contenant le script d'insertion des valeurs initiales. Par défaut :03_values.sql.resourcesFileName: Nom du fichier contenant le script d'insertion des ressources (libellés traduits). Par défaut :04_resources.sql.typesFileName: Nom du fichier contenant le script de création de types (pour SQL Server). Par défaut :05_types.sql.commentsFileName: Nom du fichier contenant le script de création de commentaires sur les tables et les colonnes. Pas de valeur par défaut.
-
ssdtOptions de génération ssdt
tableScriptFolder: Dossier du projet pour les scripts de déclaration de table.tableTypeScriptFolder: Dossier du projet pour les scripts de déclaration de type tableinitListScriptFolder: Dossier du projet pour les scripts d'initialisation des listes de références.initListMainScriptName: Fichier du projet référençant les scripts d'initialisation des listes de référencesdisableIdentity: Désactive les colonnes d'identité.generateComments: Génère les commentaires pour les tables et les colonnes dans les fichiers de table.
-
identityOptions de génération de la séquence
-
modeMode de génération de la persistence (
"none"ou"sequence"ou"identity").Valeur par défaut:
identityEn mode
sequence, si une classe possède desvaluesmais dont la PK n'est pas précisée, le générateur inclut la colonne PK dans l'INSERTet l'initialise via la séquence de la table. -
incrementIncrément de la séquence générée.
-
startDébut de la séquence générée.
-
-
resourcesTableNameNom de la table contenant les traductions
-
tableTablespaceNom du tablespace pour les tables (Postgres ou Oracle).
-
indexTablespaceNom du tablespace pour les index (Postgres ou Oracle).
Exemple
sql:
- tags:
- back
outputDirectory: ./src
targetDBMS: postgre
procedural:
crebasFile: 01_tables.sql
indexFKFile: 02_fk_indexes.sql
uniqueKeysFile: 03_unique_keys.sql
initListFile: 04_references.sql
commentFile: 05_comments.sql
resourceFile: 06_resources.sql
identity:
increment: 50
start: 1000
mode: sequence