Autore Topic: connessione a db mysql in locale: come fare?  (Letto 2356 volte)

Offline loredana.camerino

  • Nuovo arrivato
  • *
  • Post: 12
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC Sensation XE BeatSound
  • Sistema operativo:
    Windows 7/ Windows XP
connessione a db mysql in locale: come fare?
« il: 28 Dicembre 2010, 17:07:19 CET »
0
ciao a tutti!
ho cercato molto nel forum ma non sono riuscita a trovare spunto per risolvere il mio dubbio:
(se servono come informazioni utili ,sul pc ho windows xp e installato come server apache)

ho un db mysql in locale a cui devo accedere mediante l'app che sto sviluppando. volevo sapere:

1) nella classe DBHelper devo sempre implementare il metodo onCreate() anche se ho il db già esistente? o posso implementare solamente onOpen e onUpgrade? (visto che questi due metodi prendono oggettodi tipo sqlitedatabase, bisogna fare qualche "cast" al db mysql?)
oppure per la connessione al mio db devo far riferimento solo ai metodi forniti dalle librerie java, senza considerare quelle android?

2)dove metto il file del db mysql? ho letto che i db creati si trovano in /data/data/<nome pacchetto/....
e che a questa path si accede mediante adb shell. nella cartella tools non ho trovato nessun batch o exe o altro col nome adb, quindi volevo sapere come poter accedere a questo tipo di shell e se per caso devo installare qualcosa che mi è sfuggito (plugin per eclipse e sdk già installati e aggiornati)

grazie in anticipo per qualunque risposta arrivi! ;-)

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +507
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:connessione a db mysql in locale: come fare?
« Risposta #1 il: 28 Dicembre 2010, 17:14:39 CET »
0
Per accedere a un database server (che può essere mysql ma il discorso è analogo per gli altri) l'idea è quella di crearsi una specie di webservice che faccia da "proxy" per le richieste al database oppupandosi di ricevere le richieste in un certo formato (xml o json), querare il db e restituire i dati nello stesso formato.

Qui trovi una guida che spiega un po' meglio l'idea (con tanto di esempio in php, ma puoi fare un analogo in java o altri linguaggi):
Connecting to MySQL database | Hello Android

Quindi lascia da parte le varie classi SQLite, non ti servono.

adb lo trovi nella cartella platform-tools dell'sdk.
« Ultima modifica: 28 Dicembre 2010, 17:38:35 CET da Ricky`, Reason: correzione errore grammaticale »

Offline loredana.camerino

  • Nuovo arrivato
  • *
  • Post: 12
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC Sensation XE BeatSound
  • Sistema operativo:
    Windows 7/ Windows XP
Re:connessione a db mysql in locale: come fare?
« Risposta #2 il: 28 Dicembre 2010, 17:24:38 CET »
0
ti ringrazio per la risposta!!!

quella mini-guida l'avevo vista ma volevo trovare un modo per evitare di utilizzare il php, visto che questa app è un piccolo progetto per l'uni (che devo finire entro una settimana, relazione compresa!!!) ma sarà poi un grande sviluppo per il lavoro, dove poi dovrò utilizzare oracle come db e python.

se invece di creare un db mysql ne creo uno sqlite, ma fuori dell'app, per le operazioni sul db posso utilizzare tranquillamente i metodi della libreria android? (forse con questa soluzione mi semplifico di molto la vita  :-P)

ps. grazie per la dritta del percorso per adb, stavo diventando matta a cercarla!

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +507
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:connessione a db mysql in locale: come fare?
« Risposta #3 il: 28 Dicembre 2010, 17:37:52 CET »
0
Citazione
se invece di creare un db mysql ne creo uno sqlite, ma fuori dell'app, per le operazioni sul db posso utilizzare tranquillamente i metodi della libreria android? (forse con questa soluzione mi semplifico di molto la vita  :-P)

Puoi tranquillamente utilizzare un db precedentemente creato.

Lo crei con l'editor che preferisci, lo carichi nella cartella assets del progetto e con il codice che trovi qui sotto lo copi nella cartella di default di android e lo gestisci come se fosse creato all'interno dell'applicazione.

Using an existing sqlite database in an Android application | REMYVD.COM


Offline loredana.camerino

  • Nuovo arrivato
  • *
  • Post: 12
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC Sensation XE BeatSound
  • Sistema operativo:
    Windows 7/ Windows XP
Re:connessione a db mysql in locale: come fare?
« Risposta #4 il: 29 Dicembre 2010, 01:18:54 CET »
0
grazie mille per l'aiuto!!!! ho dovuto apportare qualche modifica e adesso funziona perfettamente!!!    :D :D :D