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 ....
A voir également:
0x80040e14
Microsoft ole db provider for odbc drivers (0x80040e14) - Meilleures réponses
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 ???
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.