Visual Studio 08 - Problème Syntaxe SQL
-
mardi 3 avril 2012 10:54
Bonjour à tous,
Face à un problème dont je ne suis pas sur qu'il existe une solution, je me tourne vers vous.
Explication du contexte :
Création d'un projet d'intégration service sous Visual Studio 08 (package SSIS).
J'ai crée deux gestionnaires de connexion :
TEST1 : utilisé en localhost; base de donnée DBTEST1
TEST2 : utilisé en localhost; base de donnée DBTEST2
J'ai ensuite ajouté une tâche d'exécution de requête SQL. (Connection Type : OLE DB; Connexion : TEST1; SQL SourceType : Entrée Directe).
J'y ai ajouté une requête SQL : select * from DBTEST1..name_test, DBTEST2..ville_test
Ma question est : Est-il possible d'utiliser le nom de la connexion dans la requête SQL plutôt que celle de la base de donnée pour ma sélection ?(Cad remplacer DBTEST1 et 2 par TEST1 et TEST2) L'utilité serait de simplifier la migration post-prod à prod dans le cas ou la base de donnée ne possède pas le même nom(changement manuel donc...)
Merci d'avance pour toute réponse à mon problème (résoluble ou non).
Toutes les réponses
-
mardi 3 avril 2012 11:48
Je sais qu'il existe une manip qui permet de faire une transformation entre une version dev et une version prod.
Ca existe, je l'ai déjà utilisé, mais je serais incapable de le reproduire :P (désolé) De mémoire, on applique un fichier de transformation, faudrait investiguer dans la doc.
Richard Clark
Consultant - Formateur .NET
http://www.c2i.fr
Depuis 1996: le 1er site .NET francophone- Marqué comme réponse Ciprian Duduiala dimanche 8 avril 2012 14:43
-
mardi 3 avril 2012 11:53
Bonjour,
Une solution consisterai en utiliser deux taches d'exécutions SQL (une par base), ainsi vous pouvez enlever le qualificatif de base de vos requêtes.
Puis en sorte des deux taches utiliser une tache Merge pour en faire la jointure.
Bien sûr il faut rendre vos chaines de connexion configurable dans le fichier de config.
Cordialement.
-
mercredi 4 avril 2012 07:39
Bonjour et merci pour vos réponses.
Malheureusement, je recherche actuellement une solution en requête SQL uniquement et non via un fichier de transformation.
Et le problème qui survient avec l'utilisation de deux tâches d'exécutions SQL est qu'il est impossible de réaliser un update par exemple.
Je ne sais pas s'il est possible d'utiliser un chemin relatif plutôt qu'en dur mais je cherche à ce jour cette solution.
Merci encore !
-
vendredi 6 avril 2012 09:13
Bonjour,
Vu qu’il est impossible utiliser le nom de la table comme paramètre directement dans une requête SQL Server, je crois que ce que vous voulez faire n’est pas possible. Vous pouvez utiliser des paramètres dans une requête dans SSIS (voir aussi cette discussion), mais les paramètres d’une requête SQL n’incluent pas le nom d’une table sans utiliser dynamic SQL, qui ne vous aide pas en cette situation.
Bonne journée,
Cipri
Ciprian DUDUIALA, MSFT  
•Nous vous prions de considérer que dans le cadre de ce forum on n’offre pas de support technique et aucune garantie de la part de Microsoft ne peut être offerte.
- Marqué comme réponse Ciprian Duduiala dimanche 8 avril 2012 14:43


