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

  FORUM HardWare.fr
  Programmation

  [JDBC] Attention ! Question de newbie inside !

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[JDBC] Attention ! Question de newbie inside !

n°126925
chichos
Posté le 17-04-2002 à 10:24:49  profilanswer
 

Voilà, j'ai effectué pleins de recherches sur JDBC, sur les drivers JDBC pour se connecter à une BD etc ...
Mais ... imaginons que je n'ai pas de base de données ! (donc pas de connectins possible !) ... et je veux la créer.  
Esc-ce que je peux la faire via le JDBC ? avec des méthodes createDatabase(..) par exemple ?
ou je dois d'abord downloader Oracle et faire une base de données?

mood
Publicité
Posté le 17-04-2002 à 10:24:49  profilanswer
 

n°126936
darklord
You're welcome
Posté le 17-04-2002 à 10:29:57  profilanswer
 

JDBC est un moyen d'accéder à une BD pas un remplacement de celles ci.  
 
La voiture te permet de te rendre à ton boulot, cela ne crée pas ton boulot. Tu vois le genre?
 
Donc tu dois avoir une BD qui possède une implémentation JDBC et tu peux, via ton prog créer les tables dans cette BD (pour peu que tu aies les droits).
 
Quand à oracle c'est une BD professionnelle (i.e. non personnelle). Oriente toi vers des trucs genre MySQL (gratuit).

n°126939
chichos
Posté le 17-04-2002 à 10:31:48  profilanswer
 

Ok ! Muchas gracias !
 
 :jap: ah! le célèbre Darklord à la rescousse !  :jap:

n°126940
darklord
You're welcome
Posté le 17-04-2002 à 10:32:34  profilanswer
 

:ange:

n°126945
El_gringo
Posté le 17-04-2002 à 10:39:43  profilanswer
 

DarkLord a écrit a écrit :

JDBC est un moyen d'accéder à une BD pas un remplacement de celles ci.  
 
La voiture te permet de te rendre à ton boulot, cela ne crée pas ton boulot. Tu vois le genre?
 
Donc tu dois avoir une BD qui possède une implémentation JDBC et tu peux, via ton prog créer les tables dans cette BD (pour peu que tu aies les droits).
 
Quand à oracle c'est une BD professionnelle (i.e. non personnelle). Oriente toi vers des trucs genre MySQL (gratuit).  




 
...pas forcément un BD qui possède une implémentation JDBC. Avec ODBC, on peut y accèder vis JDBC aussi !

n°126947
darklord
You're welcome
Posté le 17-04-2002 à 10:43:54  profilanswer
 

el_gringo a écrit a écrit :

 
 
...pas forcément un BD qui possède une implémentation JDBC. Avec ODBC, on peut y accèder vis JDBC aussi !  




 
oui mais bon c'est jamais qu'une indirection. Mais bon j'ai pas été complet. Je voulais dire "accessible via JDBC". Et donc via le bridge JDBC-ODBC tu peux accéder les BD "ODBC" (vive les perfs d'ailleurs dans ce cas de figure)

n°126959
El_gringo
Posté le 17-04-2002 à 10:54:56  profilanswer
 

DarkLord a écrit a écrit :

 
 
oui mais bon c'est jamais qu'une indirection. Mais bon j'ai pas été complet. Je voulais dire "accessible via JDBC". Et donc via le bridge JDBC-ODBC tu peux accéder les BD "ODBC" (vive les perfs d'ailleurs dans ce cas de figure)  




 
...si merdiques que ça !?

n°126960
darklord
You're welcome
Posté le 17-04-2002 à 10:56:02  profilanswer
 

el_gringo a écrit a écrit :

 
 
...si merdiques que ça !?  




 
pour une petite utilisation non. Mais le temps d'éxécution peut très vite prendre des proportions IMMENSES dans le cas d'une query lourde.

n°126964
chichos
Posté le 17-04-2002 à 10:59:25  profilanswer
 

Arrghh ! Damned !
j'ai installé MySQL et je veux juste créer une tout pitite base de données pour pouvoir faire des requêtes !!! .. et je me trouve en train de lire une doc de 757 pages !! :cry:  
 
après, c bon je me demmerde, j'ai les drivers pour mysql et tout...
 
help!

n°126965
darklord
You're welcome
Posté le 17-04-2002 à 11:00:09  profilanswer
 

chichos a écrit a écrit :

Arrghh ! Damned !
j'ai installé MySQL et je veux juste créer une tout pitite base de données pour pouvoir faire des requêtes !!! .. et je me trouve en train de lire une doc de 757 pages !! :cry:  
 
après, c bon je me demmerde, j'ai les drivers pour mysql et tout...
 
help!  




 
Tu accèdes à ta BD comment. Via JAVA? Si oui j'ai des codes de connection qui traine et que je peux te filer si tu veux

mood
Publicité
Posté le 17-04-2002 à 11:00:09  profilanswer
 

n°126970
chichos
Posté le 17-04-2002 à 11:08:53  profilanswer
 

ouais, j'y accède via Java
.... et je veux bien les bouts de code si ça t'embêtes pas trop
 
 :jap:

n°126974
El_gringo
Posté le 17-04-2002 à 11:13:39  profilanswer
 

DarkLord a écrit a écrit :

 
 
pour une petite utilisation non. Mais le temps d'éxécution peut très vite prendre des proportions IMMENSES dans le cas d'une query lourde.  




 
ha, c emmerdant ça. g plutot des grosses requêtes moi qd même.
Enfin, genre chercher jusqu'a 500 enregistrements dans une tablea qui peut en contenir plusieurs millions, on peut dire que c une query lourde, non !?

n°126980
chichos
Posté le 17-04-2002 à 11:21:27  profilanswer
 

J'ai encore une question con à vous soumettre !
 
Puis je faire :
1-créer une base de données avec ACCESS (ça a l'air facile!)
2-pouvoir faire des requêtes sur cet base via JDBC-ODBC ?
 
j'aimerai pouvoir mettre en place cette base assez rapidement étant donné que cela représente une infime partie de mon projet !
(... et oui, on est amenés à se revoir souvent par ici .. :D )

n°126985
chichos
Posté le 17-04-2002 à 11:31:28  profilanswer
 

pour ceux, comme moi qui savent pas se servir de MySQL pour faire des bases de données toutes simples :
 
http://igsinfo.nexenservices.com/Doc_Mysql.htm
 
voilà voilou !

n°126988
TBone
Pouet.
Posté le 17-04-2002 à 11:33:59  profilanswer
 

el_gringo a écrit a écrit :

 
ha, c emmerdant ça. g plutot des grosses requêtes moi qd même.
Enfin, genre chercher jusqu'a 500 enregistrements dans une tablea qui peut en contenir plusieurs millions, on peut dire que c une query lourde, non !?  




 
sortir 500 enregistrements sur +eurs millions ce n'est pas une query lourde si tu ne dois tester qu'un champ par exemple. (voitures de couleur verte)
 
à mon avis, DarkLord en disant "query lourde" faisait référence à des requêtes SQL complexes avec des jointures et autres festivités locales :)
 
c'est ça DarkLord ?

 

[jfdsdjhfuetppo]--Message édité par TBone--[/jfdsdjhfuetppo]


---------------
As the plane took off, the pilot turned to the co-pilot and said, “Have you ever flown solo?” Co-pilot: No. Typically I fly much higher than this.
n°126996
darklord
You're welcome
Posté le 17-04-2002 à 11:45:33  profilanswer
 

chichos a écrit a écrit :

J'ai encore une question con à vous soumettre !
 
Puis je faire :
1-créer une base de données avec ACCESS (ça a l'air facile!)
2-pouvoir faire des requêtes sur cet base via JDBC-ODBC ?




 
1 - Oui
2 - Oui mais tu dois configurer ta source ODBC sur la machine où est installée Access (voir panneaux de config -> ODBC

n°126998
darklord
You're welcome
Posté le 17-04-2002 à 11:47:00  profilanswer
 

TBone a écrit a écrit :

 
 
sortir 500 enregistrements sur +eurs millions ce n'est pas une query lourde si tu ne dois tester qu'un champ par exemple. (voitures de couleur verte)
 
à mon avis, DarkLord en disant "query lourde" faisait référence à des requêtes SQL complexes avec des jointures et autres festivités locales :)
 
c'est ça DarkLord ?  
 
 




 
Absolument

n°127003
darklord
You're welcome
Posté le 17-04-2002 à 11:50:32  profilanswer
 

chichos a écrit a écrit :

ouais, j'y accède via Java
.... et je veux bien les bouts de code si ça t'embêtes pas trop
 
 :jap:  




 
Si tu t'y connais un peu en Java ,le but est de récupérer un objet de type Connection avec lequel tu peux executer du SQL et recuper le resultat (voir JDBC sur le site de SUN pour une explication de tout cela.
 
En gros dans ton objet tu pourrais avoir une déclaration du genre
 
private Connection conn = null;
 
puis une méthode
 

Code :
  1. private void getConnection(){
  2.   if (conn == null){
  3.     try{
  4.       Class.forName("org.gjt.mm.mysql.Driver" );
  5.       conn =  DriverManager.getConnection("jdbc:mysql://localhost:3306/hub",login, password);
  6. } catch (SQLException e){
  7.             System.out.println(e.getMessage());
  8. } catch (ClassNotFoundException e){
  9.             System.out.println(e.getMessage());
  10. }
  11.     }
  12.   }

n°127007
chichos
Posté le 17-04-2002 à 11:56:29  profilanswer
 

Okay.
y'a juste à configurer l'onglet "source de donnée fichier" juste pour indiquer où se trouve la base ?
ça revient à faire une connexion entre la base et ODBC ?
ensuite moi je fais une connexion entre JDBC et ODBC via mon driver et ensuite je peux faire mes requêtes grâce à des programmes Java
 
Je suis dans le vrai là .. ou pas du tout ?  :sweat:

n°127009
darklord
You're welcome
Posté le 17-04-2002 à 11:59:14  profilanswer
 

tu es dans le vrai. Sur le web il y a plein de site qui expliquent pas à pas comment:
 
1. Configurer ta base Access pour ODBC
2. Préparer la connection en Java
3. Crée des requetes en SQL via Java
4. Récupérer les resultats
 
Je me souviens il y a 7 ans j'ai fait une petit prog de gestion de MP3 via base access et j'avais très vite trouvé un site expliquant tout de A à Z. Je te conseille de chercher (tu arriveras à un résultat probabant bcp plus rapidement).
 
Si tu as d'autres questions ...

n°127010
chichos
Posté le 17-04-2002 à 12:00:39  profilanswer
 

ouaaahhh !  
je vois dans l'URL "localhost:3306"
La base doit-elle être sur un serveur ? (détail que je ne soupçonnait pas du tout)
Si oui, j'ai Tomcat sur mon ordi... ça marche aussi ça, non ?

n°127011
El_gringo
Posté le 17-04-2002 à 12:02:50  profilanswer
 

chichos a écrit a écrit :

ouaaahhh !  
je vois dans l'URL "localhost:3306"
La base doit-elle être sur un serveur ? (détail que je ne soupçonnait pas du tout)
Si oui, j'ai Tomcat sur mon ordi... ça marche aussi ça, non ?  




 
Bah non, si ta base est en local, c très bien.
Mais dans quelle URL tu vois ça ?
Tomcat, ça sert pas à ça !
C un moteur de servlet. bref ça sert à faire tourner des servlets, un truc dont t'as pas besoin pr l'instant j'crois...

 

[jfdsdjhfuetppo]--Message édité par el_gringo--[/jfdsdjhfuetppo]

n°127012
chichos
Posté le 17-04-2002 à 12:03:11  profilanswer
 

Okay, merci pour tout.
C'est vrai qu'il y a Google et je l'utilise à fond ... mais quand tu sais pas trop vers où chercher et que tu te noies dans la doc de Sun...
Là, j'ai les idées un peu plus claires !
 :jap:

n°127015
darklord
You're welcome
Posté le 17-04-2002 à 12:06:51  profilanswer
 

chichos a écrit a écrit :

ouaaahhh !  
je vois dans l'URL "localhost:3306"
La base doit-elle être sur un serveur ? (détail que je ne soupçonnait pas du tout)
Si oui, j'ai Tomcat sur mon ordi... ça marche aussi ça, non ?  




 
pour info, localhost est l'url du loopback (ie 127.0.0.1) qui est la machine en question. Ce n'est pas parce que tu utilises une URL que ca doit etre forcément distant. C'est juste un mécanisme standard ...

n°127016
chichos
Posté le 17-04-2002 à 12:08:26  profilanswer
 

ah!  si! j'autai p'tre besoin des servlets justement !
je l'ai pas dit avant ... désolé
Un client qui se logge pour un Service par exemple ... doit rentrer un username et un loggin via une page JSP qui elle va utiliser une servlet pour aller consulter LA fameuse base de données (via donc JDBC) (ça va, c'est pas trop tordu ?)
... et la servlet se trouve donc sur Tomcat ? Mais la base de données ? sur Tomcat aussi ? c'est possible ça ? c'est pas prévu pour non ?

n°127023
darklord
You're welcome
Posté le 17-04-2002 à 12:13:48  profilanswer
 

chichos a écrit a écrit :

ah!  si! j'autai p'tre besoin des servlets justement !
je l'ai pas dit avant ... désolé
Un client qui se logge pour un Service par exemple ... doit rentrer un username et un loggin via une page JSP qui elle va utiliser une servlet pour aller consulter LA fameuse base de données (via donc JDBC) (ça va, c'est pas trop tordu ?)
... et la servlet se trouve donc sur Tomcat ? Mais la base de données ? sur Tomcat aussi ? c'est possible ça ? c'est pas prévu pour non ?  




tu as tout juste sauf pour la BD. Tomcat va faire tourner ta servlet qui va pouvoir répondre aux invocations de ta JSP. Ensuite elle pourra accéder, via JDBC, à ta base. Tu dois fournir (comme je le montre dans le bout de code) l'endroit où est la BD.
 
Si tu veux tout sur la machine tu dois
 
1. Installer tomcat
2. Installer Access
3. Créer ta bd access
4. Configurer ta BD access (login, password, "url" )
5. Mettre les informations de 4 à disposition de ta servlet
6. Ecrice le code qui répond aux requetes et compagnie
 
Pas d'amalgames please (tomcat n'a rien à voir avec une BD)

n°127029
El_gringo
Posté le 17-04-2002 à 12:18:49  profilanswer
 

DarkLord a écrit a écrit :

 
 
oui mais bon c'est jamais qu'une indirection. Mais bon j'ai pas été complet. Je voulais dire "accessible via JDBC". Et donc via le bridge JDBC-ODBC tu peux accéder les BD "ODBC" (vive les perfs d'ailleurs dans ce cas de figure)  




 
Et tu sais si les perfs de Php via ODBC sont plus correctes que celle de JDBC (via ODBC aussi) ?

 

[jfdsdjhfuetppo]--Message édité par el_gringo--[/jfdsdjhfuetppo]

n°127030
darklord
You're welcome
Posté le 17-04-2002 à 12:21:32  profilanswer
 

el_gringo a écrit a écrit :

 
 
Et tu sais si les perfs de Php via ODBC sont plus correctes que celle de JDBC (via ODBC aussi) ?  
 
 




 
aucune idée. Je ne suis plus orienté web (présentation layer) depuis des années. Et je n'ai jamais fait de PHP donc je ne saurais pas te répondre. Mais la quesiton est intéressante (et mérite peut etre un topic séparé).

n°127033
El_gringo
Posté le 17-04-2002 à 12:25:23  profilanswer
 

DarkLord a écrit a écrit :

 
 
aucune idée. Je ne suis plus orienté web (présentation layer) depuis des années. Et je n'ai jamais fait de PHP donc je ne saurais pas te répondre. Mais la quesiton est intéressante (et mérite peut etre un topic séparé).  




 
Alors c parti...

n°127087
chichos
Posté le 17-04-2002 à 13:44:03  profilanswer
 

En tout cas merci à tous pour vos explications. :jap:  
Je vais essayer de mettre tout ça en place
A bientôt pour d'autres questions. J'en ai pas fini avec vous :D

mood
Publicité
Posté le   profilanswer
 


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

  [JDBC] Attention ! Question de newbie inside !

 

Sujets relatifs
question rapide : en C un INT c'est 16 ou 32 bits ?[ PHP ] J'ai une question
[ALGO] question de débutant sur les fonctions...[ JAVA ] Compilation - Question bete :D
question sur une librairie C++[C] Petite question de newb pour un bouton ...
Question PHP debutant[php] question tte conne sur les float
newbie en prog pour question a la con 
Plus de sujets relatifs à : [JDBC] Attention ! Question de newbie inside !


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