IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JDBC Java Discussion :

derby/mysql je n'arrive pas a me décider


Sujet :

JDBC Java

  1. #1
    En attente de confirmation mail
    Inscrit en
    Février 2007
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 162
    Points : 72
    Points
    72
    Par défaut derby/mysql je n'arrive pas a me décider
    Bonjour, en parcourant le forum j'ai essayé de chercher une réponse à ma question mais sans réel succés, c'est pourquoi je me permet de faire ce post...

    C'est un problème assez spécifique :

    Je veux faire une aplli qui tourne sur un pc en local (pas sur le net) avec une base de donnée qui gérera une liste de films.
    La base de donnée avec toutes ses tables serait déjà crée. C'est à dire que si je distribue non applis sur d'autres pc, je ne veux pas faire un code qui crée ma base avec ses tables, je veux juste copier le fichier base de donnée que j'aurais créée au préalable.
    Donc ma première question est : est ce que je peux faire ça avec une base de donnée embarquée ?
    Avec mysql ça doit être possible, il suffit que je copie le fichier base de donnée.

    Ensuite je me demandais quelle serait la plus rapide des 2 lorsque je ferais des recherche dans celle-ci, que je rajouterais des champs...

    Enfin j'aimerais mettre une option dans mon programme pour sauvegarder la base de donnée. Avec mysql ça ne doit pas être un problème, il suffit de copier le fichier base de donnée. Mais avec derby comment faire ?

    En fait, en écrivant ce poste j'ai l'impression que je me trompe magistralement et que je n'ais toujours pas compris la particularité d'une base de donnée embarqué ?
    Est ce que c'est une base de donnée qui est intégré à l'appli (dans le sens ou l'executable et la base de donnée ne font q'un) ou est ce que cela veut dire que java gère derby de base (sans plugin)


    merci d'avance

  2. #2
    Membre VIP
    Inscrit en
    Mars 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 9
    Points : 11
    Points
    11
    Par défaut
    Citation Envoyé par lex13
    Bonjour, en parcourant le forum j'ai essayé de chercher une réponse à ma question mais sans réel succés, c'est pourquoi je me permet de faire ce post...

    C'est un problème assez spécifique :

    Je veux faire une aplli qui tourne sur un pc en local (pas sur le net) avec une base de donnée qui gérera une liste de films.
    La base de donnée avec toutes ses tables serait déjà crée. C'est à dire que si je distribue non applis sur d'autres pc, je ne veux pas faire un code qui crée ma base avec ses tables, je veux juste copier le fichier base de donnée que j'aurais créée au préalable.
    Donc ma première question est : est ce que je peux faire ça avec une base de donnée embarquée ?
    Avec mysql ça doit être possible, il suffit que je copie le fichier base de donnée.

    Ensuite je me demandais quelle serait la plus rapide des 2 lorsque je ferais des recherche dans celle-ci, que je rajouterais des champs...

    Enfin j'aimerais mettre une option dans mon programme pour sauvegarder la base de donnée. Avec mysql ça ne doit pas être un problème, il suffit de copier le fichier base de donnée. Mais avec derby comment faire ?

    En fait, en écrivant ce poste j'ai l'impression que je me trompe magistralement et que je n'ais toujours pas compris la particularité d'une base de donnée embarqué ?
    Est ce que c'est une base de donnée qui est intégré à l'appli (dans le sens ou l'executable et la base de donnée ne font q'un) ou est ce que cela veut dire que java gère derby de base (sans plugin)


    merci d'avance
    Bonjour,

    Apache Derby (ou Java DB qui est la version dans le JDK 6 de Sun) est plus petite en matiere de taille (footprint) et en matiere de pre-requirements machine, etc.

    Il est facile de deployer Derby avec une base de donnees deja pre-cree - il suffit de copier le repertoire qui correspond au nom de la base de donnee et le format est compatible avec toutes les architectures machines (merci Java!) - Derby peut egalement acceder (en mode lecture seulement) a une base de donnees dans un fichier JAR (Java Archive). Il est egalement possible de faire des sauvegardes en ligne sans pour autant fermer la base (version 10.2) mais bien sure les fichiers peuvent etre copies comme mentionne auparavant - Il faut juste s'assurer que le base n'est pas en activite et ce n'est pas uniquement propre a Derby...

    Rajouter des champs a une table n'est pas un probleme avec ALTER TABLE, etc...Cela est supporte...Derby est standards avec SQL92, SQL99 et SQL2003.

    Au niveau de l'embarque, cela peut signifier que la base puisse tourner dans le meme espace que l'application (same JVM pour l'appli et le moteur de la base) sans necessiter une couche reseau pour acceder a la base (donc plus rapide et en local).

    Comme Derby tourne en 100% Java, il faut le runtime Java bien evidemment - donc la version Java standard edition. Derby peut demarrer et fonctionner dans le meme espace que l'application et de facon assez transparente - Il est aussi possible d'acceder a Derby a distance dans un mode embarque (c'est un aspect de parametre de configuration)...comme serveur embarque....

    Apache Derby est tres bien pour le mode embarque vu que sa taille est petite et cela peut etre bon en fonction des contraintes du PC, etc - le moteur peut tourner dans le meme espace que l'application (en Java) - Le moteur est egalement rapide - Derby est 100% free en mode commercial egalement et supportee de facon active par la communite ou du support peut etre achete chez Sun (Java DB) - J'espere que ces elements vont aider un peu....

    N'hesitez pas a me contacter si vous avez besoin de plus de renseignements ou vous pouvez continuer cette discussion bien entendu.

    Francois Orsini
    Java DB / Apache Derby
    http://blogs.sun.com/FrancoisOrsini/
    http://developers.sun.com/javadb/
    http://db.apache.org/derby/
    http://www.ohloh.net/projects/3816

  3. #3
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    Bonjour tout le monde ,
    Je me permets de m'incruster dans cette discussion ( fort intéréssante ) afin de poser une question certes stupide :

    *Où se trouvent les données de la base ? (dans le jar de l'application ? dans un dossier spécifié dans le CLASSPATH ?,...)

    Merci d'avance pour vos reponses.

    @+

  4. #4
    Membre VIP
    Inscrit en
    Mars 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 9
    Points : 11
    Points
    11
    Par défaut
    Citation Envoyé par afrikha
    Bonjour tout le monde ,
    Je me permets de m'incruster dans cette discussion ( fort intéréssante ) afin de poser une question certes stupide :

    *Où se trouvent les données de la base ? (dans le jar de l'application ? dans un dossier spécifié dans le CLASSPATH ?,...)

    Merci d'avance pour vos reponses.

    @+
    Les donnes de la base se trouvent dans un repertoire (nom de la base) avec des fichiers dans celui-ci - Bien entendu le repertoire peut se trouver sur le disque et etre accede avec le correct chemin (path) lors du demarrage de la base (automatique lors de la premiere connection si l'on est identifie correctement bien entendu). Comme un repertoire peut etre egalement archive dans un fichier de type Archive JAR, il est possible pour Derby d'acceder a une base de donnees (repertoire) qui est dans un fichier JAR.

    En fait, il est possible d'avoir un seul JAR qui pourrait contenir, les classes de l'application, du moteur relationnel (Derby) et les donnees (en more lecture seulement si stockees dans le JAR pour des raisons de performance et technique du au format JAR)...

    Donc Oui, les donnees peuvent etre contenues (en mode read-only) dans le JAR de l'application ou sur disque - l'access a la base se fait a partir de l'URL JDBC ou un path Java est specifie...

    Quelques informations supplementaires:

    http://db.apache.org/derby/docs/dev/...devdeploy32171
    http://db.apache.org/derby/docs/dev/...#cdevdvlp21955
    http://db.apache.org/derby/docs/dev/...devdeploy39856

    Francois Orsini
    http://blogs.sun.com/FrancoisOrsini/

  5. #5
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    Merci d'avoir pris le temps de me repondre.

    J'ajouterais que c'est un grand bonheur d'avoir une personne comme vous sur les forums de developpez.com.

    @+

  6. #6
    Membre VIP
    Inscrit en
    Mars 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 9
    Points : 11
    Points
    11
    Par défaut
    Pas de probleme et Merci

    Toujours un plaisir de pouvoir aider...

  7. #7
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 1
    Points : 1
    Points
    1
    Par défaut code.jar et derby
    bonjour j'ai un probleme , et j'arrive pas à resoudre:
    je fais un programme java avec eclipse qui se connecte à une base de donner derby . et après après losque je fais le .jar (executable) et j'execute sur la ligne de commande (java -jar nom.jar) ça marche pas il m'affiche des execption.
    est ce qu'il y a 1 qui connais une solution à ce problème?

  8. #8
    Membre éprouvé Avatar de fraco
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2006
    Messages : 750
    Points : 934
    Points
    934
    Par défaut
    Salut !

    Pour augmenter tes chances, tu devrais peut-être montrer un bout de code (la connexion par exemple) et aussi le texte des exceptions...

    Bonne chance !

Discussions similaires

  1. J'arrive pas a faire les requete (minus et mysql)
    Par icicmoi dans le forum Requêtes
    Réponses: 1
    Dernier message: 12/01/2007, 10h26
  2. [MySQL] debutant arrive pas a incrementer base mysql
    Par rvm31 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 25/07/2006, 18h02
  3. j'arrive pas a selectionner les champ d'un tableau a mysql
    Par ghita269 dans le forum Administration
    Réponses: 3
    Dernier message: 04/07/2006, 12h38
  4. j'arrive pas à installer Mysql Server?
    Par kgadhi dans le forum Installation
    Réponses: 1
    Dernier message: 22/10/2005, 22h56
  5. [Kylix 3] Je n'arrive pas à utiliser MySQL
    Par usebob dans le forum EDI
    Réponses: 4
    Dernier message: 15/04/2005, 10h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo