lib mysql

Sujets variés concernant le développement en PureBasic
cha0s
Messages : 681
Inscription : sam. 05/mars/2005 16:09

lib mysql

Message par cha0s »

je sait que ce genre de question arrive souvent car j'ai utilisé la fonction recherché mais je n'ai pas de reponse prescise, donc voila je cherche une lib permetant d'utiliser une base de données mySQL utilisable pour un projet comercial et avec la gestion d'utilisateur multiple.
gratuite ou non je suis ouvert a toute sugestion merci :)
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Message par lionel_om »

Moi j'utilise les BD Access et ça marche très bien (gràce à l'appel de la dll : ODBCCP32.DLL)

J'en ferais pe etre une LIB qd j'en aurait le temps. Pendant mes vac sans doute, à Nice ! :P

Code : Tout sélectionner

#ODBC_ADD_DSN       = 1 ; Add Data source 
#ODBC_CONFIG_DSN    = 2 ; Configure (edit) Data source 
#ODBC_REMOVE_DSN    = 3 ; Remove Data source 
#ODBC_DRV_DESC$     = "Microsoft Access Driver (*.mdb)"
#ODBC_DNS$          = "PureBasic_DSN"
#ODBC_DLL_NAME$     = "ODBCCP32.DLL"
#ODBC_STR_CON1$     = "Server=SomeServer; Description=Description For Purebasic MDB-ODBC;DSN=PureBasic_DSN;DBQ="
#ODBC_STR_CON2$     = ";UID=Rings;PWD=Siggi;"




;- Preparation des DNS et des Drivers

Procedure MakeConnection(strAttributes.s) 
  Lib = OpenLibrary(#PB_Any,#ODBC_DLL_NAME$) 
  If Lib
    strAttributes = #ODBC_STR_CON1$ + strAttributes + #ODBC_STR_CON2$
    lpszDriver.s = #ODBC_DRV_DESC$
    MyMemory=AllocateMemory(Len(strAttributes)) 
    CopyMemory(@strAttributes,MyMemory,Len(strAttributes)) 
    For L=1 To Len(strAttributes ) 
      If PeekB(MyMemory +l-1)=Asc(";"):PokeB(MyMemory +l-1,0):  EndIf 
    Next L 
    
    If CallFunction(Lib, "SQLConfigDataSource", 0, #ODBC_ADD_DSN, lpszDriver.s, MyMemory ) 
      NewResult=SQLConfigDataSource_(0,#ODBC_ADD_DSN,lpszDriver.s,MyMemory )
      FreeMemory(Lib) 
      CloseLibrary(Lib)
      ProcedureReturn 1
    EndIf
  EndIf 
    ProcedureReturn 0
EndProcedure 


;- UnIni BD Connexion

Procedure UnIniConnection() 
  Result=OpenLibrary(1,#ODBC_DLL_NAME$) 
  If Result 
    lpszDriver.s=#ODBC_DRV_DESC$ 
    strAttributes.s = "DSN=" + #ODBC_DNS$ 
    Result = CallFunction(1, "SQLConfigDataSource", 0,#ODBC_REMOVE_DSN,lpszDriver.s,strAttributes ) 
    CloseLibrary(1) 
    If Result 
      ProcedureReturn #True 
    EndIf
    hasBD = #False
  EndIf 
EndProcedure 
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Message par Dr. Dri »

Pourquoi appeler odbc via une dll alors ke PB gère ODBC ?

Dri
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Message par lionel_om »

Bah moi j'y arrive pas sans la DLL.
A moins que dans la 3.93 ca le fasse auto, mais dans la version que j'avais précédement (3.83 je crois).

Et j'ai trouvé ces fonctions sur des sites allemands..
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
cha0s
Messages : 681
Inscription : sam. 05/mars/2005 16:09

Message par cha0s »

mais moi je m'interrese que au bd mySQL car j'ai l'habitude de m'en servir pour le web .Le reste des BD je ne veut meme pas en entendre parler dans ce post :p
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Message par lionel_om »

Bah c'ets la mm chose pourtant.
Au taff et à l'IUT j'utilisais des BD MySQL, mais pour mon lecteur MP3 j'ai fais avec les moyens du bord : ACCESS. Et franchement, à part les problème avec les apostrophes et le fait qu'il n'y ait pas les attributs de type TEXT (chaine de caractères infinies).
Sinon c'est la même utilisation :D
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
Répondre