Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Bonjour,
J'ai une procédure stockée qui attend des paramètres, genre:
PROCEDURE p(@a VARCHAR(2)) ... SELECT * ... WHERE a LIKE @a ...
Le like est déjà définit dans la procédure stocké.
Je passe donc mon paramètre simplement pour le like comme ça "9_", mais j'aimerais aussi pouvoir faire qqch du genre: "<>9_" sans avoir a toucher la SP, est-ce que qqun voit une solution ?
PB 9
Sybase Adaptive Server
D'avance merci
Fab
Dernière modification par thefab (26-09-2008 15:46:45)
Hors ligne
rajoute un flag = 0/1
PROCEDURE p(@a VARCHAR(2), @b NUMBER) ... SELECT * ... WHERE ( a LIKE @a AND @b = 0 ) OR ( a NOT LIKE @a AND @b = 1 ) ...
Hors ligne
Oui mais...
J'avais précisé: sans avoir a toucher la SP, hé hé...
Je sais pas si c'est possible mais ça serait vachement bien comme truc !
Hors ligne
Bonjour,
En SQL Anywhere, tu peux utiliser cette syntaxe :
"9_" => LIKE '9_'
"<>9_" => LIKE '[^9]_'
Je ne sais pas si c'est compatible ASE (à vérifier), mais il doit exister la syntaxe équivalente.
Hors ligne
Edit: Merci buck, l'idée est bonne mais ça n'a pas l'air de fonctionner...
Ça fonctionne très bien, merci je vais passer un bon week-end :-)
En fait mon argument était un varchar(4) et donc mon filtre '[^9]_' devenait '[^9]' !!
Merci buck, foon, Nyphel,... et à tous ceux de ce forum extrêmement réactif !
Dernière modification par thefab (26-09-2008 15:51:24)
Hors ligne