Procedure stockée

meryem tun Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -  
meryem tun Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

j'ai un petit probleme au niveau de ma procedure stockée. en fait j'ai une table qui s'appelle data , elle contient des prenoms . alors le principe de ma procedure c'est d'afficher les prenoms qui commencent par la chaine entrée par l'utilisateur. par exemple si je tape "al" au niveau de l'execution de ma procedure, le resultat doit etre tous les prenoms existants dans la table et qui commencent par "al" (comme alice, ali , alissa ...) .
voila le code que j'ai ecrit :

alter procedure selected
@prenom nchar(10)
as
select * from data where prenom like '"+@prenom+"%';


et puis lorsque je tape : exec selected al
il m'affiche une table vide, quelque soit la chaine entrée , toujours le meme resultat: une table vide

merci d'avance pour votre aide
PS : je travaille avec SQL Server 2008 R2

4 réponses

f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 715
 
Bonjour

alter procedure selected
@prenom nchar(10)
as
select * from data where prenom like @prenom+'%';

A essayer
0
meryem tun Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
bonjour,

merci pour la réponse f894009 , je l'ai testé mais toujours le même probleme , il m'affiche le bon resultat que lorsque j'ecrit le prenom complet c'est à dire si je tape

exec selected 'alice'
il affiche alice

mais si je tape
exec selected 'al'
il m'affiche rien

:(((
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 715
 
Re,

En changeant le type de variable
@prenom varchar(10)
0
meryem tun Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
yes !!!
enfin ça marche ! merci enormement f894009 :)
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 715
 
Re,

en suivant ce lien vous trouverez des exemples de procedures stockees ou justement la difference, entre marche ou marche pas, est dans le type de variable. C'est subtil parfois.

https://docs.microsoft.com/fr-fr/sql/t-sql/language-elements/logical-operators-transact-sql?redirectedfrom=MSDN&view=sql-server-ver15

Bonne suite
0
meryem tun Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
merci encore une fois , ça me parait un trés bon lien ;)
0