Chapter 3 Guide de référence du fichier de ressource de SGBD
Les éléments suivants sont disponible dans différents objets situés dans la catégorie Racine→Script→Objects.
Elément | Description |
---|---|
Add | Spécifie l'instruction requise pour ajouter l'objet dans l'instruction de création d'un autre objet.
Exemple (ajout d'une colonne) : %20:COLUMN% %30:DATATYPE% [default %DEFAULT%] [%IDENTITY%?identity:[%NULL%][%NOTNULL%]] [[constraint %CONSTNAME%] check (%CONSTRAINT%)] |
AfterCreate/ AfterDrop/ AfterModify | Spécifie les instructions étendues exécutées après les principales instructions Create, Drop ou Modify. Pour plus d'informations, voir Génération de script. |
BeforeCreate/ BeforeDrop/ BeforeModify | Spécifie les instructions étendues exécutées avant les principales instructions Create, Drop ou Modify. Pour plus d'informations, voir Génération de script. |
ConstName | Spécifie un template de nom de contrainte pour l'objet. Le template contrôle la façon dont le nom de l'objet sera généré.
Le template s'applique à tous les objets pour lesquels vous n'avez pas défini de nom de contrainte individuel. Le nom de contrainte qui sera appliqué à un objet est affiché dans sa feuille de propriétés. Exemples (ASE 15) :
|
Create | [génération et reverse engineering] Spécifie l'instruction requise pour créer l'objet.
Exemple : create table %TABLE% |
DefOptions | Spécifie les valeurs par défaut pour les options physiques qui seront appliquées à tous les objets. Ces valeurs doivent respecter la syntaxe SQL.
Exemple : in default_tablespace Pour plus d'informations, voir Options physiques. |
Drop | Spécifie l'instruction requise pour supprimer l'objet.
Exemple (SQL Anywhere 10) : if exists( select 1 from sys.systable where table_name=%.q:TABLE% and table_type in ('BASE', 'GBL TEMP')[%QUALIFIER%? and creator=user_id(%.q:OWNER%)] ) then drop table [%QUALIFIER%]%TABLE% end if |
Enable | Spécifie si un objet est pris en charge. |
EnableOwner | Active la définition des propriétaires pour l'objet. Le propriétaire de l'objet peut ne pas être le propriétaire de la table parent. Les valeurs possibles sont les suivantes :
Notez que dans le cas d'un propriétaire d'index, vous devez vous assurer que l'instructions Create prend en compte le propriétaire de la table et de l'index. Par exemple, dans Oracle 9i, l'instruction Create d'un index se présente comme suit : create [%UNIQUE%?%UNIQUE% :[%INDEXTYPE% ]]index [%QUALIFIER%]%INDEX% on [%CLUSTER%?cluster C_%TABLE%:[%TABLQUALIFIER%]%TABLE% ( %CIDXLIST% )] [%OPTIONS%] %QUALIFIER% fait référence à l'objet courant (index) et %TABLQUALIFIER% fait référence à la table parent de l'index. |
EnableSynonym | Active la prise en charge des synonymes pour l'objet. |
Footer | Spécifie la fin de l'objet. Le contenu est inséré directement après chaque instructions create objet
.
|
Header | Spécifie l'en-tête de l'objet. Le contenu est inséré directement avant chaque instructions create objet
.
|
MaxConstLen | Spécifie la longueur maximale de nom de contrainte prise en charge pour l'objet dans la base de données cible, où cette valeur est différente de la valeur par défaut. Voir aussi MaxConstLen - définition d'une longueur maximale pour le nom de contrainte). |
MaxLen | Spécifie la longueur maximale de code pour un objet. Cette valeur est mise en oeuvre lors de la vérification de modèle et produit une erreur si le code dépasse la valeur définie. Le code d'objet est également tronqué au moment de la génération. |
Modifiable Attributes |
Spécifie une liste d'attributs étendus qui seront pris en compte dans la boîte de dialogue de fusion lors de la synchronisation de base de données. Pour plus d'informations, voir Génération de script.
Exemple (ASE 12.5) : ExtTablePartition |
Options | Spécifie les objets physiques relatives à la création d'un objet.
Exemple (ASA 6) : in %s : category=tablespace Pour plus d'informations, voir Options physiques. |
Permission | Spécifie une liste de permissions disponibles pour l'objet. La première colonne est le nom SQL de la permission (SELECT, par exemple), et la seconde colonne est le nom abrégé qui s'affiche dans le titre des colonnes de grille.
Exemple (permissions sur les tables dans ASE 15) : SELECT / Sel INSER / Ins DELETE / Del UPDATE / Upd REFERENCES / Ref |
Reversed Queries |
Spécifie une liste de requêtes d'attribut supplémentaires à appeler lors du reverse engineering directe. Pour plus d'informations, voir Reverse engineering direct de base de données. |
Reversed Statements |
Spécifie une liste d'instructions supplémentaires qui seront récupérées par reverse engineering. Pour plus d'informations, voir Reverse engineering de script. |
SqlAttrQuery | Spécifie une requête SQL permettant d'extraire des information supplémentaires sur les objets récupérés via reverse engineering par SQLListQuery
.
Exemple (Join Index in Oracle 10g) : {OWNER ID, JIDX ID, JIDXWHERE ...} select index_owner, index_name, outer_table_owner || '.' || outer_table_name || '.' || outer_table_column || '=' || inner_table_owner || '.' || inner_table_name || '.' || inner_table_column || ',' from all_join_ind_columns where 1=1 [ and index_owner=%.q:OWNER%] [ and index_name=%.q:JIDX%] |
SqlListQuery | Spécifie une requête SQL permettant de répertorier des objets dans la boîte de dialogue de reverse engineering. La requête est exécutée pour renseigner les variables d'en-tête et créer des objets en mémoire.
Exemple (Dimension dans Oracle 10g) : { OWNER, DIMENSION } select d.owner, d.dimension_name from sys.all_dimensions d where 1=1 [ and d.dimension_name=%.q:DIMENSION%] [ and d.owner=%.q:SCHEMA%] order by d.owner, d.dimension_name |
SqlOptsQuery | Spécifie une requête SQL permettant d'extraire les options physiques d'objet sur les objets récupérés via reverse engineering par SqlListQuery
. Le résultat de la requête va renseigner la variable %OPTIONS% et doit respecter la syntaxe SQL.
Exemple (Table in SQL Anywhere 10) : {OWNER, TABLE, OPTIONS} select u.user_name, t.table_name, 'in '+ f.dbspace_name from sys.sysuserperms u join sys.systab t on (t.creator = u.user_id) join sys.sysfile f on (f.file_id = t.file_id) where f.dbspace_name <> 'SYSTEM' and t.table_type in (1, 3, 4) [ and t.table_name = %.q:TABLE%] [ and u.user_name = %.q:OWNER%] |
SqlPermQuery | Spécifie une requête SQL permettant de procéder au reverse engineering de permissions accordées sur des tables.
Exemple (Procédure dans SQL Anywhere 10) : { GRANTEE, PERMISSION} select u.user_name grantee, 'EXECUTE' from sysuserperms u, sysprocedure s, sysprocperm p where (s.proc_name = %.q:PROC% ) and (s.proc_id = p.proc_id) and (u.user_id = p.grantee) |
Dans une colonne, si la variable par défaut est de type texte ou chaîne, la requête doit extraire la valeur de la variable par défaut entre apostrophes. La plupart des SGBD ajoutent ces apostrophes à la valeur de la variable par défaut. Si le SGBD que vous utilisez n'ajoute pas les apostrophes automatiquement, vous devez les spécifier dans les différentes requêtes à l'aide de la variable par défaut.
Par exemple, dans IBM DB2 UDB 8 pour OS/390, la ligne suivante a été ajoutée dans SqlListQuery afin d'ajouter des apostrophes à la valeur de la variable par défaut :
... case(default) when '1' then '''' concat defaultvalue concat '''' when '5' then '''' concat defaultvalue concat '''' else defaultvalue end, ...
Copyright (C) 2008. Sybase Inc. All rights reserved. |
![]() |