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

ADO.NET Discussion :

C# / Sybase 12.x Exectution d'une proc stock select avec 1 paramètre en entrée pour remplir un dataset


Sujet :

ADO.NET

  1. #1
    Membre habitué Avatar de Nadinette
    Femme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2012
    Messages
    264
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2012
    Messages : 264
    Points : 144
    Points
    144
    Par défaut C# / Sybase 12.x Exectution d'une proc stock select avec 1 paramètre en entrée pour remplir un dataset
    Salut,

    J'utilise Microsoft.Practice.EntrepriseLibrary pour accéder à une base de données Sybase 12.x en C#

    J'ai écris le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
                Instrument toReturn = null;
                DataSet ds;
                string spName = "ps_GetInstrument";
                Database db = DatabaseFactory.CreateDatabase("ESpread");
                using (DbCommand dbCommand = db.GetStoredProcCommand(spName))
                {
                    dbCommand.CommandType = CommandType.StoredProcedure;
                    db.AddInParameter(dbCommand, "@isin", DbType.String, isin);
                    ds = db.ExecuteDataSet(dbCommand);
                }
                if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
                {
                    toReturn.Isin.Id = ds.Tables[0].Rows[0].Field<string>(new DataColumn("isin"));
                }
                return toReturn;
    au moment de l'execution de ds = db.ExecuteDataSet(dbCommand);

    Le système me dit que je n'ai pas fourni le paramètre @isin alors que je l'ai fait à la ligne précédente et que lorsque je regarde l'objet dbCommand, sa collection parameters contient bien mon isin.

    Pourriez-vous m'aider, je ne comprends pas ce qui m'arrive, là ...

    N

  2. #2
    Membre habitué Avatar de Nadinette
    Femme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2012
    Messages
    264
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2012
    Messages : 264
    Points : 144
    Points
    144
    Par défaut J'ai trouvé un truc qui fonctionne mais je ne sais pas si c'est la meilleure solution...
    J'ai trouvé ça et ça fonctionne.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
                using (DbCommand dbCommand = db.GetStoredProcCommand("exec " + spName + " {?}")){...}
    D'après vous, c'est bien ou pas ?

    Merci

Discussions similaires

  1. Appels de procedures stockées dans une proc stockée ?
    Par Nadaa dans le forum MS SQL Server
    Réponses: 12
    Dernier message: 17/07/2008, 10h32
  2. Réponses: 2
    Dernier message: 30/03/2007, 14h42
  3. [Débutant] Problème avec les paramètres d'une proc stockée
    Par babulior dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 28/06/2005, 15h38
  4. Requete sur une proc stockée
    Par jeff37 dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 07/04/2005, 00h56
  5. Réponses: 2
    Dernier message: 16/10/2003, 17h17

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