begin process at 2010 09 06 04:35:52
  Trouver un code source :
 
dans
 
Accueil > Forum > 

SQL

 > 

SQL Server, MSDE, SQL Express

 > 

Procédures Stockées

 > 

update dans SqlServer 2008


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

update dans SqlServer 2008

jeudi 12 février 2009 à 15:16:21 | update dans SqlServer 2008

titi66

bonjour

dans un procédure stockée, je passe  des parametres, je fais des calculs
et je veux mettre à jour ma table 
Si mon enregistrement existe je fait un Update sinon un Insert

Je ne sais pas comment tester si mon enregistement existe

j'ai pensé faire un select , puis faire un if ....
je passe en paramètre mon critère de recherche.
select count(*) from table1 where champ1 = @recherche1
Mais comment recupérer la valeur  de ce select ?

ou y a t'il une autre méthode?

merci
vendredi 13 février 2009 à 15:21:51 | Re : update dans SqlServer 2008

nhervagault

Administrateur CodeS-SourceS
Salut,

select count(*) as NB  from table1 where champ1 = @recherche1

ou
 
nb = cmd.executescalar()

vendredi 13 février 2009 à 16:20:39 | Re : update dans SqlServer 2008

titi66

Merci

mais comment tester nb apres la requete select ?
quand  je veux générer ma procédure stockée il me met une erreur ...
vendredi 13 février 2009 à 16:29:07 | Re : update dans SqlServer 2008
lundi 16 février 2009 à 10:03:41 | Re : update dans SqlServer 2008

titi66

bonjour


je fais

if nb = 0 
   insert ....
else
   update

et la variable  nb n'est pas trouvée ...
lundi 16 février 2009 à 16:51:01 | Re : update dans SqlServer 2008

titi66

Réponse acceptée !

j'ai trouve une solution :

CREATE

TABLE #tabletemp

(

NbExiste int )

-- Insertion du résultat de la requête

INSERT

INTO #tabletemp

EXEC

( select count(*) as NB  from table1 where champ1 = '+@recherche1);

--Puis on récupère le résultat

DECLARE

@val int

SELECT

@val = NbExiste FROM #tabletemp

DROP

TABLE #tabletemp

if @nbval = 0 ....
lundi 16 février 2009 à 17:45:06 | Re : update dans SqlServer 2008

nhervagault

Administrateur CodeS-SourceS
Réponse acceptée !
Ou la
Pas besoin de sortir une table temporaire

C'est sortir un bazooka pour tuer une mouche

declare @nb as int
select @nb = count(*) from dbo.Categories
print 'nb enregistrements'
print @nb
mardi 17 février 2009 à 15:00:14 | Re : update dans SqlServer 2008

titi66

effectivement  ça marche

merci


Cette discussion est classée dans : passe, select, sqlserver, update


Répondre à ce message

Sujets en rapport avec ce message

update avec select avec group by ... ouille :-/ [ par loic72 ] bonsoir,j'ai une question pour ceux qui métrisent les requete update aliant les select qui utilisent les group by?Je m'explique. Voici ma requete vous Debutant C# utilisant MySQL [ par olibara ] BonjourJ'hesite entre le forum SQL et le Forum C#Je poste donc dans les deuxJ'ai un petit probleme conceptuel de débutant en C# et concernant l'update Update dans select [ par olibara ] BonjourJ'aimerais savoir s'il est possible de faire un UPDATE en utilisant une commande selectUn truc du genre :[CODE]UPDATEaddressset Address.isEtiqu requête update avec select [ par bies ] Bonjour!!! besoin d'aide car çà fait des heures que je suis sur cette requête Au départ, j'ai ma table1 dont un extrait ci dessous. dans cette table, Update by select [ par Zart ] Bonjour est-ce qu'il est possible de faire via UNE requete un update par un selectJe m'explique je voudrais mettre à jour les champs d'une table mais SELECT et UPDATE [ par jmtoulon ] Bonjour,je souhaiterais crée une fonction qui me renvoie les lignes d'un select1.Tous d'abord, je selectionne toute les lignes de la table Results don UPDATE à partir d'un SELECT (Oracle) [ par Polack77 ] Bonjour,J'ai une grosse table à mettre à jours donc je voudrais évité l'opérateur IN (si possible)J'ai deux table. Les deux contienne les même clef.Je Installation sqlserver [ par stefan13 ] Bonjour a tousJ'utilise depuis peu sql server version 2005 expressJe souhaite utiliser sql server avec vb.netMon programme doit fonctionner en reseauC Date + 1 mois [ par ALLODREN ] Bonjour, Je travaille avec une base mysql V.5 Malgré de nombreuses recherche sur ce forum et ailleurs, je n'arrive pas à faire cela : Extraire les select et cast ... [ par cudenetf ] Bonjour, j'ai une question sur des requetes select avec des casts.Je cherche a trouver le plus grand entier N dans une table tel que N>x1 et Nle probl


Nos sponsors


Sondage...

CalendriCode

Septembre 2010
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
27282930   

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales