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:
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:
1 2 3 4 5
| procedure sp_calcul @numero nvarchar(15)
as
select *
from Table1
where TabId = @numero |
Merci d'avance
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