Probl proc stockee avec param de retour

Signaler
Messages postés
2
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
24 avril 2003
-
Messages postés
1765
Date d'inscription
jeudi 12 octobre 2000
Statut
Modérateur
Dernière intervention
11 décembre 2013
-
je veux lancer une procedure stockee dans une base sql server a partir d une page asp.
en fait g: maproc param1, param2, @retour OUTPUT pour executer la proc stockee sous Transact-SQL.
Mais je voudrais l'executer a partir d une page asp sans modifier la proc.
mon principal probl c ke j arrive pas lancer la proc : il me dis des trucs comme :
"Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC SQL Server Driver][SQL Server]Impossible d'utiliser l'option OUTPUT pour passer une constante à une procédure stockée."
alors ke je veux lui passer non pas une constante mais le nom de la variable de retour...
et je suis bien oblige de lui donne qqch ....

3 réponses

Messages postés
1765
Date d'inscription
jeudi 12 octobre 2000
Statut
Modérateur
Dernière intervention
11 décembre 2013
6
Je ne comprends pas ta question.
De quelle variable parles tu ?

Si c'est une des variables de la proc stock que tu veux choisir > à mon avis ce n'est pas possible.

F___
Messages postés
2
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
24 avril 2003

ben ma proc fait un return dans @retour et met une valeur pour savoir si tout s est bien passe ou pas ... il faut ke je lui indique une variable pour stocker la valeur et l utiliser. Mais comment ???
Messages postés
1765
Date d'inscription
jeudi 12 octobre 2000
Statut
Modérateur
Dernière intervention
11 décembre 2013
6
Je te donne un exemple de stockage de données qui renvoie le N° ID de l'élément créé :

CREATE PROCEDURE dbo.SetReponse
(
@IdReponse as int output,
@IdQuestion as int,
@IP as nvarchar(255),
@Reponse as ntext,
@LeLogin as nvarchar(255)
)
AS

if @IdReponse = 0
begin
INSERT INTO REPONSE (
ID_QUESTION, DATE_REPONSE,
IP, REPONSE, LOGIN
)
VALUES (
@IDQuestion, GetDate(),
@IP, @Reponse, @LeLogin
)
set @IdReponse = @@Identity
end
else
begin

UPDATE REPONSE SET
ID_QUESTION = @IDQuestion,
DATE_REPONSE = GetDate(),
IP = @IP,
REPONSE = @Reponse,
LOGIN = @LeLogin
WHERE ID = @IdReponse

A toi de t'en inspiré.

PS: pour renvoyer une valeur en Proc Stock il faut déclarer celle-ci en Output.

F___