begin process at 2010 03 19 12:36:13
  Trouver un code source :
 
dans
 
Accueil > Forum > 

SQL

 > 

SQL Server, MSDE, SQL Express

 > 

Procédures Stockées

 > 

If et else dans stored procedure


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

If et else dans stored procedure

mercredi 15 novembre 2006 à 13:42:23 | If et else dans stored procedure

issoux



Bonjour , j'essaie de faire des condition if et else imbriqué dans une stored procedure sous sql server 2000 , mais je n'y arrive pas : probleme de syntaxe :


savez vous me dire comment s'y prendre :

ce que j'ai fait :

if @role='admin' then  select * from admin

else if @role='user' then select * from user

mais apparemment ca bug


merci de votre aide
mercredi 15 novembre 2006 à 23:39:55 | Re : If et else dans stored procedure

Malkuth

Membre Club
Réponse acceptée !
En fait Then c'est pas pour le IF en TSQL,

On dis

IF condition
   commande
ELSE
   commande

ou

IF condition
BEGIN
   block de commandes
END
ELSE
BEGIN
   block de commandes
END

THEN c'est pour les instruction CASE :

CASE
   WHEN conditiona THEN
      expression
   WHEN conditionb THEN
      expression
   ELSE
      expression
END

Les CASE sont évaluer comme des expressions (comme l'opérateur ?: en C) et nom pas comme des blocks conditionnel (switch en C)

EX :

SET @MaChaine = CASE 
   WHEN @MonInt = 3 THEN
      N'MonInt vaut 3'
   WHEN @MonInt = 2 THEN
      N'MonInt vaut 2'
   ELSE
      N'MonInt vaut ?'
END;

on peux d'ailleurs dans ce cas adopter la syntaxe suivante :

SET @MaChaine = CASE @MonInt
   WHEN 3 THEN
      N'MonInt vaut 3'
   WHEN 2 THEN
      N'MonInt vaut 2'
   ELSE
      N'MonInt vaut ?'
END;

mais cette syntaxe n'est valable que pour tester une seule donnée et seulement des égaliter (trés proche du switch).

on ne pourat donc pas l'utiliser pour :

SET @MaChaine = CASE 
   WHEN @MonInt > 3 THEN
      N'MonInt vaut +3'
   WHEN @MonAutreInt = 2 THEN
      N'MonAutreInt vaut 2'
   ELSE
      N'MonInt vaut ' + cast(@MonInt as nvarchar)
END;
jeudi 16 novembre 2006 à 00:09:02 | Re : If et else dans stored procedure

issoux

Merci bcp


Cette discussion est classée dans : select, from, procedure, role, stored


Répondre à ce message

Sujets en rapport avec ce message

Select * from uneProcedureStockee [ par lutin2004 ] Bonjour, je voudrais faire une requête du style Select * from uneProcedureStockee where critere = "ccccc" Qui s'apparenterait en fait à un tri des rés Faire plusieurs if dans un procedure stockee [ par chris81 ] bonjour,comment puis je faire pour verifier plusiseurs if dans la meme procedure stockee c'est a direif not exist(SELECT Id FROM...) et if not exists( pb SELECT avec LIKE [ par Stubbornman ] Salut à tous,quelqu'un peut-il m'expliquer pourquoi cette requête ne fonctionne pas:SELECT * FROM table WHERE colonne LIKE '[a-e]%' OR colonne LIKE '[ Besoin d'aide en SQL avec access [ par developvbdebut ] Bonjour tout le mondeon tape le nom recherché dans une zone de text. les noms et prenoms s'affiche dans une zone de liste (car plusieurs membres de la SELECT + float(5,2) [ par djagger ] Salut !je fais la requete suivante :SELECT * FROM my_tarif WHERE min=15.49ca ne marche pas !!!!!?????par contre :SELECT * FROM my_tarif WHERE min</STR Requete Imbriqué Erreur Aussi :s [ par SF2Boss ] Voici La requete Rebelle : SELECT </s Selection de tables [ par Rouk ] Bonjour,je debeloppe en vb.net un datagrid alimente par une base sqlje voudrai faire une selection des tables que j'affiche dans le datagrid.SELECT PROBLEME SUR REQUETE ET SOUS REQUETE [ par SR2 ] voici mon problèmeje souhaiterai réaliser la meme opération qu'avec cette requete mais en utilisant des jointures INNER JOINpour eviter toutes ces sou Stored Procedure [ par elpens ] Bonjour, J'ai quelques soucis avec des procédures stockées qui utilisent des "String" (nvarchar) comme identifiant.Voilà :CREATE PROCEDURE GetIdCompan Requêtes imbriquées. Erreur [ par patatedu65 ] Bonjour,j'aimerai qu'on m'aide à toruver une solution au problème que je vous expose tout de suite.J'ai développé un site en PHP/MySQL. J'ai fait mes


Nos sponsors


Appels d'offres

Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
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 : 3,401 sec (4)

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