Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1239 connectés 

 


Dernière réponse
Sujet : Problème requete SQL
mareek

airv3 a écrit a écrit :

 
quest ce ke tu ve on pe pas etre tous aussi intelligent ke toi!
moi je suis un ptit  [:xfalken] ki te  [:iznogoud_23] ou bien je te [:zoub]  




 
forcement si tu te tape frénétiquement la tête contre les murs, ton cerveau va beaucoup moins bien marcher pour la programmation apres.  :D


Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
mareek

airv3 a écrit a écrit :

 
quest ce ke tu ve on pe pas etre tous aussi intelligent ke toi!
moi je suis un ptit  [:xfalken] ki te  [:iznogoud_23] ou bien je te [:zoub]  




 
forcement si tu te tape frénétiquement la tête contre les murs, ton cerveau va beaucoup moins bien marcher pour la programmation apres.  :D

airv3

DarkLord a écrit a écrit :

ouais mais non c'est ta réflexion qui est vraiment stupide. Désolé mais bon là quand meme :)  




Je sais mais ke ve tu!

darklord ouais mais non c'est ta réflexion qui est vraiment stupide. Désolé mais bon là quand meme :)
airv3

DarkLord a écrit a écrit :

 
 
t'es vraiment trop bête toi franchement.  
 
 :gun:  :gun:  :gun:  




quest ce ke tu ve on pe pas etre tous aussi intelligent ke toi!
moi je suis un ptit  [:xfalken] ki te  [:iznogoud_23] ou bien je te [:zoub]

darklord

airv3 a écrit a écrit :

 
ouais mais la c'et dans le prog java ke ca convertit en majuscule mais moi je ve ke ca se fasse au niveu du traitement dans la base de donnée  




 
t'es vraiment trop bête toi franchement.  
 
 :gun:  :gun:  :gun:

benoide [:zork] :bounce:
airv3 [:zekill]

benoide a écrit a écrit :

[:content]  




 :fuck:  [:zekill]  [:visualc%2B%2B]

benoide [:content]
airv3

mareek a écrit a écrit :

 
essaie ça:

Code :
  1. String req = "SELECT CHEMIN_ACCES, DESIGNATION from PRODUITS where UPPER(REF_PRODUITS) like('%" + rech.toUpperCase() + "%')";

 




ca marche impek, merci, je voyais pas l'utilisation de toUpperCAse com ca!
Merci de ton aide!!!!

mareek

airv3 a écrit a écrit :

 
voi la a requete :  
      String req = "SELECT CHEMIN_ACCES, DESIGNATION from PRODUITS where UPPER(REF_PRODUITS) like('%" + rech + "%') or LOWER(DESIGNATION) like('%" + rech + "%')";
 
rech ca correspond au mot ke je recupère pour effectuer ma recherche dans la BD!  




essaie ça:

Code :
  1. String req = "SELECT CHEMIN_ACCES, DESIGNATION from PRODUITS where UPPER(REF_PRODUITS) like('%" + rech.toUpperCase() + "%')";

airv3

mareek a écrit a écrit :

 
 
copie la ligne où tu execute cette requète SQL sur le forum, on mettra ce qu'il faut et t'auras juste à la recopier dan ston programme.  




voi la a requete :  
      String req = "SELECT CHEMIN_ACCES, DESIGNATION from PRODUITS where UPPER(REF_PRODUITS) like('%" + rech + "%') or LOWER(DESIGNATION) like('%" + rech + "%')";
 
rech ca correspond au mot ke je recupère pour effectuer ma recherche dans la BD!

mareek

airv3 a écrit a écrit :

 
ouais mais la c'et dans le prog java ke ca convertit en majuscule mais moi je ve ke ca se fasse au niveu du traitement dans la base de donnée  




 
copie la ligne où tu execute cette requète SQL sur le forum, on mettra ce qu'il faut et t'auras juste à la recopier dan ston programme.

airv3

DarkLord a écrit a écrit :

String.toUpperCase();  




ouais mais la c'et dans le prog java ke ca convertit en majuscule mais moi je ve ke ca se fasse au niveu du traitement dans la base de donnée

darklord String.toUpperCase();
airv3

irulan a écrit a écrit :

Ben tu n'as pas la possibilité d'utiliser une fonction pour convertir ton mot en majuscule avant de l'utiliser dans la requête SQL ?  




franchement SQL j'en ai fais ke pendant 9 semaine et j'avais un profs bidon!
En fait ma requete je l'utilise dans un programme java qui se connect à une BD

irulan Ben tu n'as pas la possibilité d'utiliser une fonction pour convertir ton mot en majuscule avant de l'utiliser dans la requête SQL ?
airv3 Alors pas d'idée???
airv3

airv3 a écrit a écrit :

 
ca marche carrément pas!  




en plus si je reprends la première requete :
select nom from table where UPPER(designation) like('%mon_mot%')
Si l'utilisateur tape le mot en minuscule ca passe pas! il me donne aucune réponse

airv3

mareek a écrit a écrit :

 
ben tu fais :
select nom from ma_table where UPPER(designation) like('%UPPER(MON_MOT)%');  




ca marche carrément pas!

airv3

mareek a écrit a écrit :

 
ben tu fais :
select nom from ma_table where UPPER(designation) like('%UPPER(MON_MOT)%');  




je v essayé

mareek

airv3 a écrit a écrit :

Ouai smais en fait MON_MOT je le recupère par un serlet (prog java) et c'est l'utilisateur ki tape le mot donc on est pas censé savoir si il va le tapé en majusculke ou minuscule  




ben tu fais :
select nom from ma_table where UPPER(designation) like('%UPPER(MON_MOT)%');

airv3 Ouai smais en fait MON_MOT je le recupère par un serlet (prog java) et c'est l'utilisateur ki tape le mot donc on est pas censé savoir si il va le tapé en majusculke ou minuscule
irulan :sarcastic:  
Bon je réexplique : quand tu utilises UPPER(description), Oracle va effectuer la recherche sur la colonne description en convertissant en version majuscule toute chaîne de caractère présente dans la colonne, Ok ?
 
Donc pour MON_MOT, il faut que ce soit un mot en majuscule forcément (c'est d'ailleurs pour ça que je l'avais mis en majuscule et en gras dans l'exemple).  
 
PS. Manifestement, Oracle a intégré une fonctionnalité permettant d'effectuer une conversion automatique d'une chaîne tout en minuscule car normalement tu ne devrais rien avoir en retour avec une chaîne de minuscule pour MON_MOT.
airv3

irulan a écrit a écrit :

Ah bon ?  :heink:  
Normalement, la commande UPPER met tout le mot en majuscule, indépendamment du fait qu'il y ait une majuscule dedans ou non à l'origine.
Quand tu parles de 'Servlet' c'est pour MON_MOT ou pour le contenu la colonne description ?  




Oui c'est pour MON_MOT

irulan Ah bon ?  :heink:  
Normalement, la commande UPPER met tout le mot en majuscule, indépendamment du fait qu'il y ait une majuscule dedans ou non à l'origine.
Quand tu parles de 'Servlet' c'est pour MON_MOT ou pour le contenu la colonne description ?
airv3

irulan a écrit a écrit :

 




Merci c'est bon!
Par contre tu vois si le mot commence par une majuscule et le reste minuscule ca marche pas!Exemple si je tape :
SERVLET -> c'est ok!
servlet -> c'est ok!
Servlet -> c'est pas ok!!!

irulan

irulan a écrit a écrit :

select nom from ma_table where UPPER(designation) like('%MON_MOT%');
 
Explication : UPPER permet de ne considérer que la forme en majuscule du mot. Tu mets donc MON_MOT en majuscule d'un côté, et tu utilises de l'autre UPPER de ta colonne, comme ça Oracle convertissant tout en majuscule, tu ne te préoccupes plus de la casse.  



mareek

airv3 a écrit a écrit :

j'utilise une base ORacle 8i  




 
je sais que dans SQL server tu choisis à l'installation si ta base doit être "case sensitive" ou non. regarde dans les options d'oracle voir si tu trouve qqch

airv3

DarkLord a écrit a écrit :

le but de like et de % % est utile pour tout chaine qui contient ce qu'il y a entre % %  
 
En ce qui concerne maj/min il faut probablement appliquer une fonction qui dépend du SGBD.  




Pour le like j'utilise comme ca le moteur de recherche renvoie tout ce ki est silikaire a la recherche!
Mais mon problème ce sont les majuscule

irulan select nom from ma_table where UPPER(designation) like('%MON_MOT%');
 
Explication : UPPER permet de ne considérer que la forme en majuscule du mot. Tu mets donc MON_MOT en majuscule d'un côté, et tu utilises de l'autre UPPER de ta colonne, comme ça Oracle convertissant tout en majuscule, tu ne te préoccupes plus de la casse.
airv3 j'utilise une base ORacle 8i
darklord le but de like et de % % est utile pour tout chaine qui contient ce qu'il y a entre % %  
 
En ce qui concerne maj/min il faut probablement appliquer une fonction qui dépend du SGBD.
mareek

airv3 a écrit a écrit :

J'ai nu problème je fais une requête SQL :  
select nom from ma_table where designation like('%mon_mot%');
Je voudrait que la requete puisse traité mon_mot qu'il soit en minuscule ou en majuscule! parce ke si mon mot est en majuscule dans ma base et que dans la requete je l'ecris en minuscule il me renvoie aucune reponse alors ke j'en ai une ki correspond!
Merci de l'aide [:yoz]  




 
tu utilises quel SGBD pour ta base ?

airv3 J'ai nu problème je fais une requête SQL :  
select nom from ma_table where designation like('%mon_mot%');
Je voudrait que la requete puisse traité mon_mot qu'il soit en minuscule ou en majuscule! parce ke si mon mot est en majuscule dans ma base et que dans la requete je l'ecris en minuscule il me renvoie aucune reponse alors ke j'en ai une ki correspond!
Merci de l'aide [:yoz]

Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR