bootchoz
Messages postés88Date d'inscriptionmardi 3 mai 2005StatutMembreDernière intervention17 septembre 2006
-
28 juil. 2006 à 11:54
bootchoz
Messages postés88Date d'inscriptionmardi 3 mai 2005StatutMembreDernière intervention17 septembre 2006
-
31 juil. 2006 à 12:09
bonjour, je n'arrive pas à utiliser cette fonction.
je voudrais verifier si un select me renvoit une cellule vide. J'avais ecrit cela mais @var ne vaut jamais null meme quand ma table est vide !
si quelqu'un peut m'aiguiller ce serait sympa.
merci.
SET @var=(SELECT DISTINCT id_dem FROM table_virtuel)
if(@var = NULL)
SET @id_dem=((SELECT MAX(id_dem) FROM [demande])+1)
else
SET @id_dem=@var
bootchoz
Messages postés88Date d'inscriptionmardi 3 mai 2005StatutMembreDernière intervention17 septembre 2006 31 juil. 2006 à 12:09
en fait, ce qui m'interesse n'est pas le nombre d'enregistrement de 'table_virtuel' mais la valeur de 'id_dem' qui est la pk d'une autre table nommée demande. Je vide 'table_virtuel' apres chaque validation des changements effectués par l'utilisateur. ca fonctionne en effet si @var=0 mais si @var=nbEnregistrements, il peut etre different de la valeur réelle de 'id_dem'. je ne suis surement pas tres explicite, excuse moi. voila ma new procedure stockee qui fonctionne.merci pour ton aide sim51
CREATE PROCEDURE InsertEtreAttribue @date_deb datetime, @date_exp datetime, @date_sup datetime, @wwid_pers varchar(50), @id_role bigint
AS
DECLARE @id_pers bigint
DECLARE @id_dem bigint
DECLARE @var bigint
SET @id_pers=(SELECT id_pers FROM personne WHERE [mailto:wwid_pers=@wwid_pers wwid_pers=@wwid_pers])
SET @var=(SELECT DISTINCT id_dem FROM table_virtuel)
if(@var = NULL)
SET @id_dem=(SELECT MAX(id_dem)+1 FROM [demande])
else
SET @id_dem=@var
UPDATE role
SET [mailto:date_deb=@date_deb date_deb=@date_deb], [mailto:date_exp=@date_exp date_exp=@date_exp], [mailto:date_sup=@date_sup date_sup=@date_sup]
WHERE [mailto:id_role=@id_role id_role=@id_role]
INSERT INTO table_virtuel (id_dem, id_role, date_deb, date_exp, date_sup)
VALUES (@id_dem, @id_role, @date_deb, @date_exp, @date_sup)
GO
bootchoz
Messages postés88Date d'inscriptionmardi 3 mai 2005StatutMembreDernière intervention17 septembre 2006 31 juil. 2006 à 09:36
en fait je cherche a savoir s'il y a deja un enregistrement dans la table. si oui, j'attribue le meme id a l'enregistrement suivant, sinon, je vais rechercher dans une autre table le dernier id enregistré, je lui ajoute 1 pour retrouver la nouvelle valeur de l'id.c'est un peu tordu mais c'est la seule solution que j'ai trouvé pour resoudre mon truc.