1

Bon ben j'ai encore des soucis de requètes sous SQL server.

Je passe par un String java pour stocker ma requete. Cette dernière est cencée prendre des numéro d'identifiant seulement si leur description correspondante ne commence ni par un 0 ni par un 5 :

request =  "SELECT vueActuelleChgmt.idWic FROM T_VueChangement vueActuelleChgmt, T_vueCatalogue vueCatalogue"; 
 request = request+" WHERE vueActuelleChgmt.idCatalogue = vueCatalogue.idCatalogue and ((vueCatalogue.description NOT LIKE '0*') OR (vueCatalogue.description NOT LIKE '5*'))" ;

J'ai pas d'erreur SQL mais ma requete ne tient pas compte des NOT LIKE. En gros, j'obtiens tous les identifiants.

" WHERE ... NOT LIKE \"0*\" ..... ";J'ai également essayé en mettant des
Avec ca, g une erreur SQL

J'ai aussi essayé avec la fonction SUBSTR qui récupérait le premier caractère de la chaine et le comparait a 0 ou 5 mais ca me donnait pas les bons résultats non plus.

Voila merci. Je suis dispo si questions

matthieu

2

le problème c'est pas ça ? "((vueCatalogue.description NOT LIKE '0*') OR (vueCatalogue.description NOT LIKE '5*'))"
n'importe quelle entrée sera nécessairement différente soit de '0*' soit de '5*', puisqu'elle ne peut pas être égale aux deux à la fois, c'est ton "OR" qui serait faux happy
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

3

calin merci lol ... J'ai honte dehors

Je ne dirai plus de mal d'SQL SERVER ni d'access promis ...

Par contre j'ai donc changer le OR, en disant que je ne voulais NI ceux qui commencent par 0 NI ceux qui commencent par 1. Donc j'ai mis un AND. Mais ca me donne le meme résultat ....

e.description LIKE '3*'" ;
J'ai tester cette requete :
request = "SELECT vueActuelleChgmt.idWic FROM T_VueChangement vueActuelleChgmt, T_vueCatalogue vueCatalogue";  
 request = request+" WHERE vueActuelleChgmt.idCatalogue = vueCatalogue.idCatalogue and vueCatalogu

et ca me renvoie rien ... malgrès le fait qu'il y ait plus quelques milliers de ligne qui sont cencées apparaitre


4

ok ben j'ai trouvé. Il fallait remplacé le * par %.