Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di bobc
    Registrato dal
    Feb 2004
    Messaggi
    245

    [Java-jdbc] Creare un NUOVO database

    ciao,

    volevo sapere se è possibile creare un nuovo database da un programma java tramite jdbc. So che, come letto nella pillola di LeleFT, si può creare una connessione a un database già esistente, ma non riesco a trovare una documentazione per creare, appunto, un nuovo database tramite Jdbc. Ammesso che si possa fare... altrimenti sarebbe una grave mancanza degli sviluppatori
    Grazie anticipatamente a chi vorrà fornirmi delle risposte!


    Ah come database uso mysql se può servire...

  2. #2
    Utente di HTML.it L'avatar di nether
    Registrato dal
    Dec 2006
    Messaggi
    376
    credo che basti eseguire una normale query con stringa sql "create database nomedatabase"...

  3. #3
    Utente di HTML.it L'avatar di bobc
    Registrato dal
    Feb 2004
    Messaggi
    245
    Originariamente inviato da nether
    credo che basti eseguire una normale query con stringa sql "create database nomedatabase"...
    mmmm....

    per eseguire una query normalmente si dovrebbe avere prima una connessione a un determinato database del tipo:

    connection=DriverManager.getConnection("jdbc:mysql ://localhost/"+nomeDb+"?user=root");

    la query poi si costruisce con:

    Statement stmt=connection.createStatement();
    stmt.eseguiQuery("...");

    Io dovrei creare un database da ZERO.

    edit: cosa faccio? Emigro a Firebird?

  4. #4
    Utente di HTML.it L'avatar di bobc
    Registrato dal
    Feb 2004
    Messaggi
    245
    Allora... provo a riformulare la domanda dato che ho letto qualcosa di interessante sia qui sul forum di html che sul sito della sun:
    JDBC, di norma, dovrebbe permettere la creazione di un database "EX-NOVO", ma non tutti i database permettono questo (in particolare dipende dai rispettivi driver-jdbc), come si evince da questa descrizione:

    http://java.sun.com/developer/online...html#JDBC202_1

    Sempre da questo link ho letto che un database dove Jdbc può operare per creare un database da zero è ad esempio il db "Cloudscape".
    Poi, qui su html, ho visto che con firebird si può anche fare una cosa del genere (come ho letto sulle pillole).
    Vorrei sapere se con MySQL fosse anche possibile creare un database da zero tramite JDBC!

    Grazie.

    PS: Una vocina mi sta dicendo lasciar stare MySQL e di passare a firebird. Cosa mi consigliate?

  5. #5
    Utente di HTML.it L'avatar di salcam
    Registrato dal
    Dec 2005
    Messaggi
    193
    Io personalmente utilizzo la linea di comando tramite exec. Lo faccio con postgreSql ma credo non ci siano problemi ad adattarlo a MySql:
    codice:
    try {
        Process p = Runtime.getRuntime().exec("C:"+File.separator+"Programmi"+File.separator+"PostgreSQL"+File.separator+"8.1"+File.separator+"bin"+File.separator+"createdb nomedb --host=localhost --username=username");
        try {
    	p.waitFor();
        } catch (InterruptedException e) {
    	e.printStackTrace();
        }
    } catch (IOException e1) {
        e1.printStackTrace();
        JOptionPane.showMessageDialog(null,"Impossibile creare database");
    }
    Cioè utilizzo il comando createdb messo a disposizione da PostGreSql.

    CIAO

  6. #6
    Utente di HTML.it L'avatar di nether
    Registrato dal
    Dec 2006
    Messaggi
    376
    se ti colleghi a mysql senza specificare nessun database "di partenza" cosa ti dice?
    Del tipo jdbc:mysql://localhost/ senza specificare nessun database aggiuntivo nel percorso.
    Scusa ma non uso jdbc da una vita...

  7. #7
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Potresti provare la soluzione proposta da nether, oppure una via "spicciola" per ricolvere la cosa: l'installazione di MySQL prevede a priori la creazione di un database pubblico chiamato "test".
    Collegati a quello (che esiste sicuramente, a meno che qualcuno non l'abbia preventivamente rimosso), oppure al database "mysql" (che non può essere rimosso, ma devi accedere come root) e successivamente esegui un "CREATE DATABASE".


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  8. #8
    Utente di HTML.it L'avatar di bobc
    Registrato dal
    Feb 2004
    Messaggi
    245
    Originariamente inviato da nether se ti colleghi a mysql senza specificare nessun database "di partenza" cosa ti dice?
    Del tipo jdbc:mysql://localhost/ senza specificare nessun database aggiuntivo nel percorso.
    Scusa ma non uso jdbc da una vita...

    Originariamente inviato da LeleFT
    Potresti provare la soluzione proposta da nether, oppure una via "spicciola" per ricolvere la cosa: l'installazione di MySQL prevede a priori la creazione di un database pubblico chiamato "test".
    Collegati a quello (che esiste sicuramente, a meno che qualcuno non l'abbia preventivamente rimosso), oppure al database "mysql" (che non può essere rimosso, ma devi accedere come root) e successivamente esegui un "CREATE DATABASE".


    Ciao.
    Ok, adotterò questa soluzione.

    Comunque proverò anche quella di salcam che forse mi potrà tornare utile se funziona.

    Grazie 1000

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.