Italian Mysql Library

mosix

Member
Buongiorno a tutti.
Dopo circa due anni ho ripreso il lavoro che avevo cominciato per realizzare una libreria aggiuntiva per b4a che implementasse le funzioni base per la connessione diretta ad un database MySQL.

Sono riuscito ieri a far funzionare il tutto; adesso mi sto dedicando al perfezionamento della stessa libreria.

Se qualcuno fosse interessato anche (e soprattutto) a darmi una mano, contattatemi.

Spero di riuscire in breve a completare l'essenziale e postare qui la libreria con le istruzioni per l'utilizzo.

A presto.
 

ivanomonti

Expert
Licensed User
Longtime User
Buongiorno a tutti.
Dopo circa due anni ho ripreso il lavoro che avevo cominciato per realizzare una libreria aggiuntiva per b4a che implementasse le funzioni base per la connessione diretta ad un database MySQL.

Sono riuscito ieri a far funzionare il tutto; adesso mi sto dedicando al perfezionamento della stessa libreria.

Se qualcuno fosse interessato anche (e soprattutto) a darmi una mano, contattatemi.

Spero di riuscire in breve a completare l'essenziale e postare qui la libreria con le istruzioni per l'utilizzo.

A presto.

Non male, io potrei essere interessato alla collaborazione, ma di librerie non so una mazza.

Fra l'altro io ho iniziato un progetto con mysql usando php, questo perché il mio progetto prevede piattaforme diverse e trovo anche questo metodo interessante.

Ho finito la parte windows mobile 7, stasera il progetto in realstudio per mac Osx e Windows desktop (xp,vista,seven, 8), credo che domani inizio il progetto Android in quanto la gestione mysql fatta in php facilita la riscrittura dell'app.

teniamoci in contatto.
 

ivanomonti

Expert
Licensed User
Longtime User
E' vero, ma in questo caso non bisogna passare per Json, ergo la connessione è diretta.

io credo che quello che potrebbe essere valido e un recordset perché ricevere dati in formato xml, json o txt non credo sia un problema, ma gestirli con un recordset potrebbe risultare interessante.

Poi cmq bisogna vedere se il progetto si ferma solo ad Android o va oltre, cmq sono curioso ;-)
 

yawmbox

Member
Licensed User
Longtime User
io credo che quello che potrebbe essere valido e un recordset perché ricevere dati in formato xml, json o txt non credo sia un problema, ma gestirli con un recordset potrebbe risultare interessante.

Poi cmq bisogna vedere se il progetto si ferma solo ad Android o va oltre, cmq sono curioso ;-)
Infatti è proprio quello che fa... stay tuned!
 

mosix

Member
il problema che mi ero prefisso di eliminare era proprio il passaggio attraverso altre forme di interconnessione tra android ed il database.
in poche parole per passare dei dati da un database mysql ad un terminale android devo realizzare delle pagine php o altro che mi fungano da parser in qualche modo.
con la libreria che ho realizzato invece mi connetto direttamente al server mysql dal mio android e ci faccio quello che voglio, con una riduzione dei tempi di operazione, che finché si tratta di poche centinaia di record non è molto evidente, ma se passo a migliaia di record (come mi è servito un paio di volte) i tempi cambiano notevolmente.
 
Last edited:

ivanomonti

Expert
Licensed User
Longtime User
il problema che mi ero prefisso di eliminare era proprio il passaggio attraverso altre forme di interconnessione tra android ed il database.
in poche parole per passare dei dati da un database mysql ad un terminale android devo realizzare delle pagine php o altro che mi fungano da parser in qualche modo.
con la libreria che ho realizzato invece mi connetto direttamente al server mysql dal mio android e ci faccio quello che voglio, con una riduzione dei tempi di operazione, che finché si tratta di poche centinaia di record non è molto evidente, ma se passo a migliaia di record (come mi è servito un paio di volte) i tempi cambiano notevolmente.

Sono daccordo, ma ripeto che l'uso di una libreria diretta su mysql deve essere pensata su progetti che non verranno riscritti per ios, Wp7 e altri che non gfanno uso si socket per connessioni dirette, a questo punto devi per forza usare php o cose simili.
 

mosix

Member
ma se sviluppi in b4a dubito che tu possa riutilizzare il tuo codice così per com'è e ricompilarlo per ios o altro. mica stiamo parlando di sviluppo html5, jquery o simili. in questo caso lo sviluppo è unicamente riferito ad android... almeno al momento non mi pare di aver visto un basic4ios, correggetemi se sbaglio.
 

ivanomonti

Expert
Licensed User
Longtime User
ma se sviluppi in b4a dubito che tu possa riutilizzare il tuo codice così per com'è e ricompilarlo per ios o altro. mica stiamo parlando di sviluppo html5, jquery o simili. in questo caso lo sviluppo è unicamente riferito ad android... almeno al momento non mi pare di aver visto un basic4ios, correggetemi se sbaglio.

Giusto, ma siccome un progetto può nascere per diverse realtà, come ad esempio la mia (windows desktop, Mac osx, Windows Phone, Ios, Android) e scritto in tools diversi come Realstudio (Win,Osx using basic), VisualStudio (windows desktop, Windows phone using c#), Basic4Android (Android using basic), xCode (Ios e OSx using c++ c) e non tutti ( Windows Phone e Ios ) fanno uso di librerie mysql dirette ma devi appoggiarti a pagine che fungono come API (PHP,ASP) usando HTTPSocket.

A questo punto ho voluto perfezionare app scrivendo API php nella quale gestisco tutto il DataBase MySql usando come risposta un Json.

Caso diverso se faccio un app solo android mi farebbe piacere usare una libreria MYSQL con recorset, che fino ad ora o usato UTILDB e che funziona bene se modifichi una stringa nel Manifest.

Ciao.
 
E' testata su di un server locale? A me va in errore:
com.mysql.jdbc4.CommunicationsException:Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago.
The driver has not received any packets from the server.
Grazie 1000
Manuel
 

yawmbox

Member
Licensed User
Longtime User
Certo che è testata.
Bisogna ricordarsi di impostare come target le Google API 8. Sulle versioni successive purtroppo ci sono problemi di compatibilità.
 
Ho provato con un emulatore con Api 8, ma, l'errore persiste, puoi cortesemente postare una stringa di connessione di esempio?
Ho provato con: mh1.Initialize("localhost:3306","db_name","db_user","db_password")
o con mh1.Initialize(127.0.0.1:3306","db_name","db_user","db_password")
ma il risultato non cambia...
Ciao Manuel
 
Top