2010-09-13 4 views
0

Je déconnecte quelque part lorsque j'écris une fonction pour exécuter une procédure stockée. Je pense que je n'ai pas une idée de comment exécuter SqlHelper.ExecuteReader. dans le serveur SQL 2005SqlHelper.ExecuteReader Fonction qui exécute une procédure stockée

Cela devrait retourner le nom de l'état. Mais je l'obtiens vide. Une idée, pourquoi?

Merci à l'avance :)

reader = SqlHelper.ExecuteReader(DbConnString, System.Data.CommandType.StoredProcedure, "GetStateName", parameters); 
while (reader.Read()) 
    StateName = reader["StateName"].ToString(); 
return StateName; 

et la procédure stockée:

Create PROCEDURE [dbo].[GetStateName](
@StateInitials varchar 
) 

AS 

Begin 

SELECT StateName FROM StateList WHERE [email protected] 

End 
+0

Quelle est la procédure stockée? – SLaks

+0

si vous pouvez donner votre proc stocké sql et quels paramètres vous passez, il serait utile de répondre. –

+0

GetStateName est la procédure stockée !! – Ram

Répondre

0

Je suppose que la valeur vous passez à la SP pour @StateInitials a plus d'un caractère , mais parce que vous n'avez pas spécifié la taille du paramètre varchar (par exemple, varchar (25)), la valeur est tronquée à un seul caractère, et donc il n'y a pas de correspondance.

Voir here

Lorsque n est pas spécifié dans une définition ou des données déclaration de variable déclaration , la longueur par défaut est 1.

Questions connexes