2009-08-18 5 views
1

Je tente de mettre en place un package de déploiement pour une solution ps qui doit configurer un schéma de base de données Oracle. Le schéma contient la plupart des types d'objets Oracle sous une forme ou une autre.Déploiement de packages PL/SQL Oracle à l'aide d'un projet de déploiement .Net

Je souhaite exécuter le déploiement entièrement à partir de l'application de déploiement et j'ai créé une tâche d'installation personnalisée pour effectuer la plupart des actions.

Je peux créer des tables et des vues sans aucun problème, mais je ne peux pas créer de packages PL/SQL via les outils d'accès aux données .Net.

Quelqu'un peut-il me dire comment ils ont résolu ce problème en utilisant .Net Framework 2.0, et quel Oracle Data Client a été utilisé?

Editer: Je cours actuellement des scripts SQL à partir de la ligne de commande, mais je les appelle depuis le programme d'installation. Cela ne donne pas le niveau de retour que je recherche, même si cela me permet de déployer rapidement l'application dans la plupart des cas.

J'ai également eu cette méthode échouez-moi en raison du schéma que je déployais pour ne pas avoir le droit de créer des déclencheurs.

Répondre

0

[Pas la réponse que vous cherchez]

Mon expérience avec Oracle est qu'ils sont "protégés" par DBAs. Chaque DBA que j'ai jamais rencontré ne répondra pas à la façon dont vous créez des objets dans leur base de données.

Vous pouvez garder cela à l'esprit et effectuer la totalité de la création d'objets Oracle à l'aide de scripts SQL simples. Les administrateurs de base de données comme ceux-ci peuvent les vérifier avant de les exécuter, puis vous poser beaucoup de questions car ils n'ont aucune idée des besoins de l'entreprise, ce qui explique pourquoi vous avez cette conception de table.

Ceci est une solution vraiment simple - je suis sûr que vous essayez de faire fonctionner votre installation en un seul passage à travers lequel je comprends. Vous pouvez dépenser beaucoup d'efforts avant que quelqu'un se retourne et vous dit que vous ne pouvez pas le faire de cette façon.

+0

Merci Chris. Je cherche à faire cela en un seul passage, appuyez sur le bouton et fuir sorte d'installation, et généralement ce sera dans un schéma flambant neuf. Tous les liens DB doivent être configurés manuellement et, si le schéma est correctement configuré, le déploiement doit être isolé. Je sais exactement ce que vous voulez dire par rapport aux administrateurs de bases de données qui protègent leur domaine ... Les fournisseurs tiers fournissant 99% + de temps de disponibilité ont tous les droits d'être nerveux! – Hooloovoo

0

J'élimine le composant Oracle Data Access, d'Oracle, qui gère la création de paquets beaucoup mieux que le composant Microsoft.

Si j'exécute le code approprié à l'aide de la commande ExecuteNonQuery, un package, une fonction ou une procédure peut être créé.

Je n'arrive toujours pas à exécuter des scripts complets, mais je devrais être capable d'analyser les fichiers de script pour exécuter uniquement le SQL approprié sans trop d'effort.