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

Windows Forms Discussion :

Exécution d'une procédure stockée paramétrée SQL/Server 2005 depuis VB 2005


Sujet :

Windows Forms

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 14
    Points : 13
    Points
    13
    Par défaut Exécution d'une procédure stockée paramétrée SQL/Server 2005 depuis VB 2005
    Bonjour,

    J’ai un problème pour exécuter une procédure paramétrée SQL Server 2005 depuis VB 2005.
    Tout est ok quand je lance la même procédure sans paramètre (après avoir enlevé le paramètre dans la procédure bien sûr).
    Mon code côté VB est comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Dim MyConnexion As SqlConnection = New SqlConnection("Data Source=localhost…")
     
    Dim Mycommand As SqlCommand = MyConnexion.CreateCommand()
    Mycommand.CommandType = CommandType.StoredProcedure
    Mycommand.CommandText = "sp_calcul"
     
    Mycommand.Parameters.Add("@numero", SqlDbType.NVarChar).Value = ListBox2.SelectedItem
     
    MyConnexion.Open()
    Dim MyReader As SqlDataReader = Mycommand.ExecuteReader()
    Côté Procédure stockée:
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    procedure sp_calcul @numero nvarchar(15)
    as
    select * 
    from Table1
    where TabId   =  @numero
    Merci d'avance

  2. #2
    Membre actif Avatar de tssi555
    Analyse système
    Inscrit en
    Juillet 2008
    Messages
    594
    Détails du profil
    Informations professionnelles :
    Activité : Analyse système

    Informations forums :
    Inscription : Juillet 2008
    Messages : 594
    Points : 295
    Points
    295
    Par défaut
    Salut,

    c'est normal que ta procédure stockée n'est pas crée,

    Je suppose que ton problème est dù principalement au mot clé 'CREATE' pour créer une nouvelle procédure stockée, sinon si tu ajoute CREATE et tu n'a rien, utilise le mot clé "USE ta_base_de_donnes" tout au début pour ne pas créer la procédure dans une autre base de données.

    ce qui donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    USE ta_base_de_donnees
    CREATE procedure sp_calcul @numero nvarchar(15)
    as
    select * 
    from Table1
    where TabId = @numero
    Quand tu est dans SQL Server, je te conseil de séléctionner la portion de code que tu veux executer, c'est la partie séléctionnée qui est executée. Dans ton cas séléctionne à partir de USE ... jusqu'à ... @numero.

  3. #3
    Membre à l'essai
    Inscrit en
    Juillet 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 14
    Points : 13
    Points
    13
    Par défaut Exécution d'une procédure stockée paramétrée SQL/Server 2005 depuis VB 2005
    Merci pour ta réponse.
    Le mot-clé CREATE existe bien. La preuve c'est que la procédure s'exécute correctement quand j'enlève le paramètre.
    Pour moi le problème vient de la passation du paramètre car juste avant d'exécuter la procédure dans VB 2005, j'affiche le paramètre et c'est la bonne valeur qui s'affiche effectivement. C'est comme si la procédure ne reçoit pas correctement la valeur. Le résultat de la SELECT est donc nul.

    Le code de la procédure est le suivant:

    USE [BASE1]
    GO
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    ALTER procedure [dbo].[spcalcul] @numero nvarchar(15)
    as
    select *
    from Table1
    where TabId = @numero

Discussions similaires

  1. Exécution d'une procédure stockée sous sql server 2000
    Par amirad dans le forum Développement
    Réponses: 2
    Dernier message: 27/04/2009, 09h50
  2. Réponses: 0
    Dernier message: 30/09/2008, 01h14
  3. Réponses: 2
    Dernier message: 20/03/2007, 17h00
  4. Exécution d'une procédure stockée dans Sql
    Par Pascalp dans le forum Access
    Réponses: 4
    Dernier message: 01/09/2006, 11h47
  5. Réponses: 2
    Dernier message: 05/12/2005, 16h39

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