A propos des scripts d'installation

Un script d'installation peut contenir toutes les instructions SQL nécessaires à la création de l'application ou il peut s'agir d'un script maître qui exécute d'autres scripts.

Un script est une série d'instructions SQL dans un fichier dont le nom se termine par .sql (par exemple, create_app.sql). Lorsque vous exécutez un script dans un programme client tel que SQL*Plus ou SQL Developer, les instructions SQL sont exécutées dans l'ordre dans lequel elles apparaissent dans le script. Un script dont les instructions SQL créent une application est appelé script d'installation.

Pour déployer une application, vous exécutez des scripts d'installation dans l'environnement de déploiement. Pour une nouvelle application, vous devez créer les scripts d'installation. Pour une application plus ancienne, les scripts d'installation peuvent exister, mais s'ils ne le sont pas, vous pouvez les créer.

A propos des instructions DDL et des dépendances d'objet de schéma

Un script d'installation contient des instructions LDD qui créent des objets de schéma et, éventuellement, des instructions INSERT qui chargent des données dans des tables créées par des instructions LDD. Pour créer des scripts d'installation correctement et exécuter plusieurs scripts d'installation dans l'ordre approprié, vous devez comprendre les dépendances entre les objets de schéma de votre application.

Si la définition de l'objet A fait référence à l'objet B, A dépend de B. Par conséquent, vous devez créer B avant A. Autrement, l'instruction qui crée B échoue ou elle crée B dans un état non valide, selon le type d'objet.

Pour une application complexe, l'ordre de création des objets est rarement évident. Généralement, vous devez consulter le concepteur de la base de données ou un schéma de la conception.

Voir aussi :

A propos des instructions et des contraintes INSERT

Lorsque vous exécutez un script d'installation qui contient des instructions INSERT, vous devez déterminer si des contraintes peuvent être violées lorsque des données provenant de tables source (dans l'environnement de développement) sont insérées dans de nouvelles tables de l'environnement de déploiement.

Pour chaque table source de votre application, vous devez déterminer si des contraintes peuvent être enfreintes lorsque leurs données seront insérées dans la nouvelle table. Dans ce cas, vous devez désactiver ces contraintes, puis insérer les données et tenter de réactiver les contraintes. Si un élément est en violation d'une contrainte, vous n'êtes pas autorisé à réactiver cette contrainte tant que vous n'avez pas corrigé l'élément de données.

Si vous insérez simplement les données de recherche dans l'ordre approprié (comme dans "Chargement des données"), les contraintes ne sont pas enfreintes. Par conséquent, il n'est pas nécessaire de les désactiver préalablement.

Si vous insérez des données à partir d'une source extérieure (telle qu'un fichier, une feuille de calcul ou une application plus ancienne) ou à partir d'un grand nombre de tables ayant de nombreuses données dépendantes, désactivez les contraintes avant cette opération.

Vous pouvez désactiver et réactiver les contraintes de l'une des manières suivantes :