[SQL SERVER 2005] Procédure Transac SQL pour un nul
Bonjour à tous,
J'essaie vainement de créer une procédure transac SQL et je suis super débutant...
Voilà à quoi ça ressemble
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
-- ================================================
-- Template generated from Template Explorer using:
-- Create Procedure (New Menu).SQL
--
-- Use the Specify Values for Template Parameters
-- command (Ctrl-Shift-M) to fill in the parameter
-- values below.
--
-- This block of comments will not be included in
-- the definition of the procedure.
-- ================================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
CREATE PROCEDURE [dbo].[csp_CreateTest2] @Fam nvarchar
-- Add the parameters for the stored procedure here
AS
set nocount on
DECLARE @Fam3204 numeric
select @Fam3204 = dataid from filedata where lang_00 = @Fam and descid = 3204
insert into temp_test (tt) values(cast(@Fam3204 as varchar))
set nocount off
GO |
alors, si je fait la requête select manuellement sur la table filedata et que je fixe le paramètre @Fam à une valeur 'TOTO', j'ai bien une réponse numérique (1542)
Code:
select dataid from filedata where lang_00='TOTO' and descid = 3204
me renvoie 1542
la table temp_test a un champ unique TT de type varchar
si j'exécute la procédure en mettant en paramètre d'entrée TOTO, la table TEMP_TEST a bien un nouvel enregistrement mais il a pour valeur NULL...
Merci de m'avoir lu