Newsgroup: it.comp.programmare.win32
Titolo: funzioni connessione mysql

Ciao, esistono funzioni nelle API Win32 che permettono di connettersi
con un database mysql? 

 con un database mysql?
Ciao, non ci sono api specifiche per nessun db nelle win32.
Nella notte dei tempi si accedeva con odbc che ha un supporto nativo in 
Windows (vedi control panel) ma che richiede l'installazione del driver 
odbc specifico per ogni database. È meglio evitare odbc perché la sua 
architettura è particolarmente poco performante.
Successivamente, all'epoca com, si è passati a oledb. Anche qui c'è 
bisogno del driver specifico. Nelle ultime versioni dell'OS non è 
neppure più preinstallato ADO nè il provider jet.
Alla fine questi driver usano le winsock, quindi sono queste le api 
native che puoi utilizzare per parlare con mysql così come tutti gli 
altri db.
Dubito che però sia la strada migliore perché in pratica ti 
riscriveresti il driver che è complesso e noioso.
Nel peggiore dei casi potresti usare il driver odbc, ma se puoi usare 
almeno oledb è certamente più performante.
BTW. Occhio che mysql è sotto GPL e quindi il codice che scrivi sarà 
obbligatoriamente sotto GPL (a meno che non compri l'altra licenza di 
mysql).
-- 
Raffaele Rialdi  
http://www.iamraf.net
Weblog: 
http://blogs.ugidotnet.org/raffaele
Microsoft MVP profile 
https://mvp.support.microsoft.com/profile/raffaele
UGIdotNET - 
http://www.ugidotnet.org/

 ha scritto nel messaggio 
news:mn.932e7da88...@n0spamvevy.com...

Ti ringrazio per le spiegazioni. 

 mysql).
Anche se in realtà essendo il software completamente open source, il
protocollo client/server è noto o comunque desumibile dal codice. Quindi
teoricamente si potrebbero scrivere delle proprie "connector APIs" (anziché
usare quelle di MySQL) da linkare nel proprio software client. In questo
modo evidentemente il vincolo della GPL sarebbe scavalcato, perché non si
tratterebbe di derived work (si basa su un protocollo) e un software che si
connette a un altro tramite tecniche IPC standard non è comunemente
soggetto alla GPL.
Però bisogna anche vedere quale genere di tecniche IPC impiega MySQL; se
sono molto "intime" (shared memory, ecc...) è possibile che la GPL possa
valere comunque:
http://en.wikipedia.org/wiki/GNU_General_Public_License#Communicating_and_bundling_with_non-GPL_programs
-- 
emboliaschizoide.splinder.com


Un bel grattacapo che deve essere richiesto a mySQL ottenendo una 
risposta scritta e firmata.
Diversamente il rischio è di trovarsi in causa (che chiunque può 
aprire, non solo mySQL, visto che si tratta di GPL) e di essere 
obbligati a rilasciare tutti i propri sorgenti.
A me sinceramente non è neppure chiaro se, a prescindere dal connector, 
solo il fatto di dialogare con mySQL implica sottostare alla GPL. Io la 
interpreto in questo modo ma le licenze non sono il mio pane.
Purtroppo mySQL non chiarisce questi aspetti neppure dietro esplicite 
domande sul forum:
http://forums.mysql.com/read.php?4,1988,1988
Io la interpreto nel modo pessimistico (cioè la GPL si applicherebbe 
comunque) perché diversamente una terza azienda potrebbe creare un suo 
connector e bypassare la licenza GPL di mySQL (più eventuali guadagni 
sul supporto).
BTW ci sono diverse soluzioni alternative a mySQL che non hanno 
ambiguità nella licenza come Firebird, PostgreSQL e naturalmente 
Compact SQL e SQL Express
