IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MS SQL Server Discussion :

SSIS et variables


Sujet :

MS SQL Server

  1. #1
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 17
    Points : 7
    Points
    7
    Par défaut SSIS et variables
    Bonjour,

    j'ai besoin de passer une variable de mon lot DTS ds une requete SQL.
    J'ai fait ceci :

    ds la tache d'execution je défini la connec sql en OLEDB.
    Je défini ma variable utilisateurs comme suit :
    nom de la variable : Utilisateur::batchUserName
    direction : input
    type de données : varchar
    nom du parametre : 1

    ensuite ds ma requete SQL je fais :
    EXECUTE SP_update_fw_import_J2_to_datawarehouse] ?

    mais cela ne fonctionne pas, qd j'analyse ma requete j'ai le message d'erreur suivant :
    Échec de l'analyse de la requête. Erreur de syntaxe, violation d'autorisation ou autre erreur non spécifique


    Qqun peut-il m'aider svp ?
    merci d'avance
    Cyril

  2. #2
    Expert confirmé
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Points : 4 043
    Points
    4 043
    Par défaut
    Bonjour,

    Dans le code que tu as posté, il y a un ] de trop.

    Quel est le type de connexion que tu utilises ? Si c'est un connecteur ADO.NET, tu dois nommer ta variable avec un @ au lieu d'utiliser le ?. Si tu es en OLEDB, ADO ou ODBC, le nom du mapping entre la variable et le paramètre doit être nommé précisément pour représenter la position du paramètre. Par exemple, si tu n'as qu'un param à passer, tu dois la nommer 0 en OLEDB, 1 en ODBC, Param1 en ADO. Regarde l'aide en ligne sous Execute SQL Task
    Rudi Bruchez
    Rudi Bruchez EIRL, solutions MS SQL Server et NoSQL
    LinkedIn - [Outil libre de diagnostic SQL Server : Sql Trismegiste]
    LIVRES : Optimiser SQL Server -
    Microsoft SQL Server 2012 Security Cookbook
    - les bases de données NoSQL

    e-learning : LinkedIn Learning - Pluralsight

  3. #3
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 17
    Points : 7
    Points
    7
    Par défaut
    Hello,

    pour le ] en trop c'est juste une erreur de copié coller

    sinon, j'utilise OLE DB et comme nom de parametre j'ai essaye 0, puis 1 mais cela ne change rien. Je n'utilise qu'une variable ds ma requete SQL que je symbolise par ? (point d'interrgoation) comme c'est indiqué ds l'aide de microsoft

  4. #4
    Expert confirmé
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Points : 4 043
    Points
    4 043
    Par défaut
    Quel est le message d'erreur que tu obtiens ?
    Rudi Bruchez
    Rudi Bruchez EIRL, solutions MS SQL Server et NoSQL
    LinkedIn - [Outil libre de diagnostic SQL Server : Sql Trismegiste]
    LIVRES : Optimiser SQL Server -
    Microsoft SQL Server 2012 Security Cookbook
    - les bases de données NoSQL

    e-learning : LinkedIn Learning - Pluralsight

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2006
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 19
    Points : 21
    Points
    21
    Par défaut
    Pour des connections OLE DB, les noms de paramètre doivent commencer à 0 et non à 1.

    Y'a juste ça à modifier, je pense.


    _

  6. #6
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 17
    Points : 7
    Points
    7
    Par défaut
    j'ai essayé avec un nom de parametre à 0, mais cela ne marche pas non plus

  7. #7
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 17
    Points : 7
    Points
    7
    Par défaut
    je viens de changer de gestionnaire de connexion pour un ADO et la cela fonctionne.
    (nom du parametre : param1, et appel de la variable ds la requete avec un : ?)
    mais si qqun à la solution avec OLE DB, je suis preneur, ca m'évitera de changer toutes mes autre connexions...

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2006
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 19
    Points : 21
    Points
    21
    Par défaut
    Personnellement, je viens de faire un test de ton cas avec une OLE DB dont la chaine de connexion ressemble à cela :

    Provider=SQLNCLI.1;Data Source=madatasource;Integrated Security=SSPI;Initial Catalog=moncatalogue

    Et ca marche avec un paramètre à 0.

    Ton pb est peut-être lié à la connexion user/mdp sur ta base ?


    _

  9. #9
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 17
    Points : 7
    Points
    7
    Par défaut
    j'ai la mm chaine de connexion que toi, mais je ne pense pas que cela soitun pb de userr/pwd puisque ma connexion marche parfaitement pour le reste du dts

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2006
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 19
    Points : 21
    Points
    21
    Par défaut
    voici les propriétés de ma tâche Sql Task, compare avec les tiennes pour voir :



    _
    Images attachées Images attachées  

Discussions similaires

  1. [SSIS] [2K5] Variable SSIS avec Oracle 10g
    Par alaa00 dans le forum SSIS
    Réponses: 0
    Dernier message: 22/03/2010, 12h08
  2. [SSIS] [2K5] Variable SSIS avec Oracle
    Par alaa00 dans le forum SSIS
    Réponses: 0
    Dernier message: 21/03/2010, 14h55
  3. [SSIS 2K8] Variable Parent sur plusieurs fils
    Par patriceharel dans le forum SSIS
    Réponses: 3
    Dernier message: 11/03/2009, 10h31
  4. [SSIS][2k5]variables SSIS
    Par zwazillon dans le forum SSIS
    Réponses: 0
    Dernier message: 01/12/2008, 18h18
  5. Réponses: 2
    Dernier message: 11/06/2008, 12h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo