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

  FORUM HardWare.fr
  Programmation
  Java

  a propos du switch "default"

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

a propos du switch "default"

n°674815
bentaih
la vie ne apprend encore
Posté le 16-03-2004 à 10:16:45  profilanswer
 

resalut tout le monde ;
en fait je suis entrain de faire  un programme ou je fais la connesxion a deux base de donnée differente une foxpro et une mysql ,
bon le probleme que j'ai c que dans le swittch que j'ai utilisé j'ai mis dans le default ce qui suit :  
default : {Connection FoxPro ; Connection mysql}
es ce possible de faire ce que j'essaye de faire car il me donne une erreur  
  FoxPro is already defined in ConDB(int)
 
en sachant que conDB(int) est la methode qui contien le switch
 :pt1cable:  :jap:  merci

mood
Publicité
Posté le 16-03-2004 à 10:16:45  profilanswer
 

n°674837
nraynaud
lol
Posté le 16-03-2004 à 10:42:24  profilanswer
 

ben c'est clair, tu as déjà une variable nommée FoxPro dans ta méthode.
 
file-nous le code complet de la méthode stp.


---------------
trainoo.com, c'est fini
n°674843
bentaih
la vie ne apprend encore
Posté le 16-03-2004 à 10:45:37  profilanswer
 

nraynaud a écrit :

ben c'est clair, tu as déjà une variable nommée FoxPro dans ta méthode.
 
file-nous le code complet de la méthode stp.


Code :
  1. public void ConDB (int DBTYPE)
  2.                 {
  3.                 Properties properties=new Properties();
  4.                 properties.setProperty ("charSet","Cp858" ); //Permet de reconnaitre les accents et le caractère euro
  5.                  switch (DBTYPE)
  6.                         {
  7.                         case FOXPRO : Connection FoxPro ;
  8.                         Class driver_DBF = Class.forName(DBFoxPro);
  9.                         FoxPro  = DriverManager.getConnection("jdbc:DBF:////home/bentaih/intranet/cron" , properties);
  10.                         break;
  11.                         case MYSQL : Connection MySql ;
  12.                         Class driver_mysql = Class.forName(DBMySql);
  13.                         MySql = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/" +"testb", "root","" );
  14.                         break;
  15.                         default : { Connection FoxPro ; Connection MySql ; }
  16.                         break;
  17.                         }
  18.                 }


 
voila le code


Message édité par bentaih le 16-03-2004 à 10:46:34
n°674863
bentaih
la vie ne apprend encore
Posté le 16-03-2004 à 11:13:06  profilanswer
 

nraynaud a écrit :

ben c'est clair, tu as déjà une variable nommée FoxPro dans ta méthode.
 
file-nous le code complet de la méthode stp.


 
svvvvvvvvvvvvvvpppppppppppp
repondez moi , je suis triste  
 :cry:  

n°674865
LAs3R
Posté le 16-03-2004 à 11:13:56  profilanswer
 

de toute facon tu ne pourra pas utiliser ta connexion en dehor de ton switch
 
fait plutot comme ca :
 

Code :
  1. Connection connection = null;
  2. switch (DBTYPE) {
  3. case FOXPRO :
  4.   Class.forName(DBFoxPro);
  5.   connection = DriverManager.getConnection("jdbc:DBF:////home/bentaih/intranet/cron" , properties);  
  6.   break;
  7. case MYSQL :
  8.   Class.forName(DBMySql);
  9.   connection = DriverManager.getConnection(jdbc:mysql://127.0.0.1:3306/" +"testb", "root","" ); 
  10.   break;
  11. }


Message édité par LAs3R le 16-03-2004 à 11:14:54
n°674886
bentaih
la vie ne apprend encore
Posté le 16-03-2004 à 11:34:37  profilanswer
 

LAs3R a écrit :

de toute facon tu ne pourra pas utiliser ta connexion en dehor de ton switch
 
fait plutot comme ca :
 

Code :
  1. Connection connection = null;
  2. switch (DBTYPE) {
  3. case FOXPRO :
  4.   Class.forName(DBFoxPro);
  5.   connection = DriverManager.getConnection("jdbc:DBF:////home/bentaih/intranet/cron" , properties);  
  6.   break;
  7. case MYSQL :
  8.   Class.forName(DBMySql);
  9.   connection = DriverManager.getConnection(jdbc:mysql://127.0.0.1:3306/" +"testb", "root","" ); 
  10.   break;
  11. }




oui je vois et mon default j'y met quoi?

n°674910
LAs3R
Posté le 16-03-2004 à 12:06:18  profilanswer
 

ben apparemment t'en as pas besoin
 
tu devrais plutot lever une exception genre :

Code :
  1. Connection connection = null;
  2. switch (DBTYPE) {
  3. case FOXPRO : 
  4. Class.forName(DBFoxPro);
  5. connection = DriverManager.getConnection("jdbc:DBF:////home/bentaih/intranet/cron" , properties);   
  6. break;
  7. case MYSQL : 
  8. Class.forName(DBMySql);
  9. connection = DriverManager.getConnection(jdbc:mysql://127.0.0.1:3306/" +"testb", "root","" ); 
  10. break;
  11. }
  12. if (connection == null) {
  13. throw new IllegalArgumentException("code bdd inconnue :" + DBTYPE);
  14. }


Message édité par LAs3R le 16-03-2004 à 12:10:31
n°674918
kotw
Posté le 16-03-2004 à 12:09:04  profilanswer
 

Tu mets  
default:break;
De toute façon, telle que c'était écrit, tes déclarations dans default ne t'auraient effectivement servi à rien.

n°674923
the real m​oins moins
Posté le 16-03-2004 à 12:19:57  profilanswer
 

kotw a écrit :

Tu mets  
default:break;

euh pour mettre ça tu met pas du tout de default hein [:jofission]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°674934
kotw
Posté le 16-03-2004 à 12:31:05  profilanswer
 

the real moins moins a écrit :

euh pour mettre ça tu met pas du tout de default hein [:jofission]


 
Il veut savoir quoi mettre dans le default, je lui dis quoi mettre !

mood
Publicité
Posté le 16-03-2004 à 12:31:05  profilanswer
 

n°674938
bentaih
la vie ne apprend encore
Posté le 16-03-2004 à 12:33:29  profilanswer
 

LAs3R a écrit :

ben apparemment t'en as pas besoin
 
tu devrais plutot lever une exception genre :

Code :
  1. Connection connection = null;
  2. switch (DBTYPE) {
  3. case FOXPRO : 
  4. Class.forName(DBFoxPro);
  5. connection = DriverManager.getConnection("jdbc:DBF:////home/bentaih/intranet/cron" , properties);   
  6. break;
  7. case MYSQL : 
  8. Class.forName(DBMySql);
  9. connection = DriverManager.getConnection(jdbc:mysql://127.0.0.1:3306/" +"testb", "root","" ); 
  10. break;
  11. }
  12. if (connection == null) {
  13. throw new IllegalArgumentException("code bdd inconnue :" + DBTYPE);
  14. }




 
 
 
une petite remarque les variables FOXPRO et MYSQL faudra peut etre les declarer qq part  
ouuuuuuu??

n°674939
bentaih
la vie ne apprend encore
Posté le 16-03-2004 à 12:34:19  profilanswer
 

the real moins moins a écrit :

euh pour mettre ça tu met pas du tout de default hein [:jofission]


 :whistle:  
hohoho pas de baguare

n°674940
bentaih
la vie ne apprend encore
Posté le 16-03-2004 à 12:35:04  profilanswer
 

kotw a écrit :

Tu mets  
default:break;
De toute façon, telle que c'était écrit, tes déclarations dans default ne t'auraient effectivement servi à rien.


 
ok je vais esayer ca  

n°674943
kotw
Posté le 16-03-2004 à 12:37:38  profilanswer
 

Mais pourquoi tu veux absolument déclarer une variable de nom FoxPro ou Mysql ? L'important, c'est d'avoir la connection en fonction de DBTYPE, et le code donné me parait très correct
 
Edit : je te conseille de toujours mettre un  
default:break; même quand tu n'as rien dedans, ça mange pas de pain, et dans ta période d'apprentissage, ça te fera pas de mal :-)


Message édité par kotw le 16-03-2004 à 12:43:03
n°674954
bentaih
la vie ne apprend encore
Posté le 16-03-2004 à 12:47:43  profilanswer
 

kotw a écrit :

Mais pourquoi tu veux absolument déclarer une variable de nom FoxPro ou Mysql ? L'important, c'est d'avoir la connection en fonction de DBTYPE, et le code donné me parait très correct
 
Edit : je te conseille de toujours mettre un  
default:break; même quand tu n'as rien dedans, ça mange pas de pain, et dans ta période d'apprentissage, ça te fera pas de mal :-)


d'accord  
mais moi je pose la questio car j'ai integré le code dans mon programme et j'ai cette erreur  
 
 symbol  : variable FOXPRO  
 location: class WorkDB
                        case FOXPRO : Connection FoxPro ;
 
 
 
ou alors qq chose d'autre m'echape

n°674963
kotw
Posté le 16-03-2004 à 12:56:48  profilanswer
 

Lol attends, le code qui me parait correct est celui posté par LAs3R, à savoir :
 
Connection connection = null;  
  switch (DBTYPE) {  
     case FOXPRO :  
      Class.forName(DBFoxPro);  
      connection = DriverManager.getConnection("jdbc:DBF:////home/bentaih/intranet/cron" , properties);  
      break;  
     case MYSQL :  
      Class.forName(DBMySql);  
      connection = DriverManager.getConnection(jdbc:mysql://127.0.0.1:3306/" +"testb", "root","" );    
      break;  
  }

n°674968
kotw
Posté le 16-03-2004 à 13:00:14  profilanswer
 

kotw a écrit :

Lol attends, le code qui me parait correct est celui posté par LAs3R, à savoir :
 
Connection connection = null;  
  switch (DBTYPE) {  
     case FOXPRO :  
      Class.forName(DBFoxPro);  
      connection = DriverManager.getConnection("jdbc:DBF:////home/bentaih/intranet/cron" , properties);  
      break;  
     case MYSQL :  
      Class.forName(DBMySql);  
      connection = DriverManager.getConnection(jdbc:mysql://127.0.0.1:3306/" +"testb", "root","" );    
      break;  
  }
 


 
Edit :
en règle générale, de toute façon, je te conseille de prendre TOUJOURS l'habitude d'initialiser tes variables quand tu les déclares.

n°675046
bentaih
la vie ne apprend encore
Posté le 16-03-2004 à 14:09:15  profilanswer
 

kotw a écrit :


 
Edit :
en règle générale, de toute façon, je te conseille de prendre TOUJOURS l'habitude d'initialiser tes variables quand tu les déclares.


 
d'accord je vois  
meme si j'ai encore une rafale d'erreur mais je vais essayer de corriger tt ca  

n°675072
LAs3R
Posté le 16-03-2004 à 14:29:06  profilanswer
 

bentaih a écrit :


 
 
 
une petite remarque les variables FOXPRO et MYSQL faudra peut etre les declarer qq part  
ouuuuuuu??
 


 
ben j'ai fait que reprendre ton code, je pensais que tu les avais declaré qqpart  :sweat:

n°675099
bentaih
la vie ne apprend encore
Posté le 16-03-2004 à 14:48:38  profilanswer
 

LAs3R a écrit :


 
ben j'ai fait que reprendre ton code, je pensais que tu les avais declaré qqpart  :sweat:  


 
ook ok ok ok
excuse j'ai oublié une ligne au commentaire

n°675283
benou
Posté le 16-03-2004 à 19:08:17  profilanswer
 

personne l'a encore dit alors je me lache :  
 
[:benou] http://java.sun.com/docs/codeconv/index.html [:benou]


---------------
ma vie, mon oeuvre - HomePlayer
n°675788
LAs3R
Posté le 17-03-2004 à 07:30:33  profilanswer
 

benou a écrit :

personne l'a encore dit alors je me lache :  
 
[:benou] http://java.sun.com/docs/codeconv/index.html [:benou]


 
hehe j'ai pas osé :)

n°675817
bentaih
la vie ne apprend encore
Posté le 17-03-2004 à 09:06:32  profilanswer
 

benou a écrit :

personne l'a encore dit alors je me lache :  
 
[:benou] http://java.sun.com/docs/codeconv/index.html [:benou]


 
euuh.....   merci   :o  :sweat:

n°676817
bentaih
la vie ne apprend encore
Posté le 18-03-2004 à 09:38:51  profilanswer
 

salut tt le monde en fait j'ai un autre petit probleme je suis entrain d'essayer la fonction d'indexation sur le resultat de ma requete sql.
le seul prob que j'ai c quue cette fonction s'ecrit sous  forme de   string.indexof("mot rechercher" )
et le resulat de la requete est sous frome de ResultSet;
es ce que quelqu'un a une idéee ?????
merci :)


Message édité par bentaih le 18-03-2004 à 10:41:54
n°677027
kotw
Posté le 18-03-2004 à 12:45:24  profilanswer
 

Normalemnet, tu as ça :
 
String strResult = result.getString(indexCol);
 
Après, il faut que tu adaptes tes méthodes en fonction de ce que tu veux faire

n°677230
bentaih
la vie ne apprend encore
Posté le 18-03-2004 à 15:50:57  profilanswer
 

kotw a écrit :

Normalemnet, tu as ça :
 
String strResult = result.getString(indexCol);
 
Après, il faut que tu adaptes tes méthodes en fonction de ce que tu veux faire


 
oui je sais j'ai deja essayé ca  
mais ca marche pas il me donne l'erreur suivante
 

Code :
  1. Illegal operation on empty result set
  2. java.sql.SQLException: Illegal operation on empty result set
  3.         at com.mysql.jdbc.ResultSet.checkRowPos(ResultSet.java:3623)
  4.         at com.mysql.jdbc.ResultSet.getString(ResultSet.java:1767)
  5.         at work.main(work.java:167)


Message édité par bentaih le 18-03-2004 à 15:51:27
n°677242
bentaih
la vie ne apprend encore
Posté le 18-03-2004 à 15:55:12  profilanswer
 

kotw a écrit :

Normalemnet, tu as ça :
 
String strResult = result.getString(indexCol);
 
Après, il faut que tu adaptes tes méthodes en fonction de ce que tu veux faire


 
je te donne mon code pour y jeter un coup d'oeil
 

Code :
  1. public static void main(String argv[])
  2.   {
  3.    String requete;
  4.    requete = new String("SELECT * FROM D0011100 WHERE COMMENTS LIKE '%PE%'" );
  5.    WorkDB MaBase=new WorkDB() ;
  6.    MaBase.ConDB();
  7.    MaBase.Log("connection reussie!" );
  8. try
  9.         {
  10.          ResultSet reqresult;
  11.          reqresult = MaBase.executeSQL(requete,1);
  12.          String conv;
  13.          conv = reqresult.getString(2);
  14.          MaBase.DecodeString(conv);
  15.                         }
  16.          catch ( Exception e )
  17.               {
  18.                System.out.println(e.getMessage());
  19.                e.printStackTrace();
  20.               }


 
si t'as des remarques n'hesite pas merci beaucoup :jap:  :)


Message édité par bentaih le 18-03-2004 à 15:57:10
n°677280
LAs3R
Posté le 18-03-2004 à 16:19:07  profilanswer
 

Code :
  1. ResultSet reqresult = maBase.executeSQL(requete,1);
  2. if (reqresult.next()) {
  3. String conv = reqresult.getString(2);
  4. maBase.decodeString(conv);
  5. }


Message édité par LAs3R le 18-03-2004 à 16:20:58
n°677322
kotw
Posté le 18-03-2004 à 16:53:41  profilanswer
 

Je dirais d'essayer ça :
 
      try
      {
       WorkDB MaBase=new WorkDB() ;  
       MaBase.ConDB();  
       MaBase.Log("connection reussie!" );  
     
       ResultSet reqresult;  
       reqresult = MaBase.executeSQL(requete,1);  
     
        while (reqresult.next())
        {
          String conv = reqresult.getString(2);  
          MaBase.DecodeString(conv);
        }
      }  
        catch ( Exception e )  
        {  
           System.out.println(e.getMessage());  
           e.printStackTrace();  
         }  

n°677356
bentaih
la vie ne apprend encore
Posté le 18-03-2004 à 17:13:57  profilanswer
 

kotw a écrit :

Je dirais d'essayer ça :
 
      try
      {
       WorkDB MaBase=new WorkDB() ;  
       MaBase.ConDB();  
       MaBase.Log("connection reussie!" );  
     
       ResultSet reqresult;  
       reqresult = MaBase.executeSQL(requete,1);  
     
        while (reqresult.next())
        {
          String conv = reqresult.getString(2);  
          MaBase.DecodeString(conv);
        }
      }  
        catch ( Exception e )  
        {  
           System.out.println(e.getMessage());  
           e.printStackTrace();  
         }  
 


c tout a fait ca  
ca marche  
merci beaucoup :jap:

n°677394
kotw
Posté le 18-03-2004 à 18:08:47  profilanswer
 

Lol faudra que je pense à me faire payer ! ;-)

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  a propos du switch "default"

 

Sujets relatifs
[SNMP] Retouver le switch correspondant à une adresse MAC, assez urgen[MySQL] Besoin d'aide à propos des types de colonnes
à propos de Scilabbonjour, est il possible de vous poser une question a propos de CSS ??
[JAVA] Question à propos des FlowLayout()A propos des Sessions
Help a propos de la classe CPaintDC !!!!petite question a propos d'electronique et programmation...
A propos de Visual Studio 6.0Rempalcer des if/else avec des String en Switch/case avec des entiers?
Plus de sujets relatifs à : a propos du switch "default"


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