Procédure stockée en SQL Serveur

Résolu/Fermé
denis - 9 août 2004 à 22:03
 lefaucheux - 3 avril 2008 à 11:42
help please

comment résoudre cette énigme ?

procédure stockée : create procedure test
as
declare @flag integer
update ... (c'est une requête update)
set @flag=1
select @flag
go

cette procédure fonctionne parfaitement en l'appelant depuis php ou avec le query analyser (comprendre la requête est exécutée et la valeur "1" est retournée)...

mais en VB, casse-tête... impossible de récupérer la valeur --> message d'erreur : impossible d'exécuter bla bla quand le recordset est fermé...

et mon code VB est :

set rset = cn.execute "test"
msgbox rset.fields(0).value

--> ça bloque sur cette dernière ligne...

C'est pour mon mémoire, je bloque depuis 4 jours et j'en ai MARRRRRRRE !

Please help

Denis
A voir également:

2 réponses

Si ton UPDATE s'est bien passé , il peut te retourner le nombre de lignes modifiées , non ?

faire une fonction appelé "exeRequete(byval requete as string) as integer" dans une classe

dim scConnect as sqlconnection = opensql()
dim objetSQLcommand as new sqlcommand
dim result as integer =0

objetSQLcommand.commandtext = requete
objetSQLcommand.connection = scconnect
result = objetSQLcommand.ExecuteNonQuery()
sqlClose(scConnect)
return result

requete etant "exec NomDeTaProcedure"

si ton result>1 alors l'update a eu lieu.

est ce que ca t'aide ?
2
nicolasnicolas
20 févr. 2007 à 17:23
dans mon analysur de requete :


declare @plop int
select @plop

me retoure une colonne qui a comme nom "Aucun nom de colonne"


declare @plop int
select @plop as plop1

me retourne une colonne avec un nom.... (plop1)

Il se peux que le fait qu'il n'y a pas de nom a ta colonne gene ton recordset ....


C'est une piste ...
1