Page 1 sur 1
BDD MS ACCESS 2007
Publié : ven. 12/sept./2008 8:29
par Alopia
Bonjour,
Je débute avec PureBasic. Est-il possible d'utiliser Access 2007 comme système de base de données. Sinon quel serait le système le plus adapté sous windows ?
Si quelqu'un dispose d'un exemple, je suis preneur.
Merci d'avance.
Yves.
Publié : ven. 12/sept./2008 10:22
par Atomo
Salut,
Tu peux utiliser la lib interne de PureBasic qui gère les bases de données Sqlite, tu peux trouver un post qui explique comment s'en servir ici :
http://www.purebasic.fr/french/viewtopi ... ght=sqlite
Publié : sam. 13/sept./2008 9:41
par comtois
Je ne connais absolument rien aux bases de données, mais il me semble que pour utiliser une base access tu dois établir une « source de données utilisateur », ce qui rend ta base de données disponible par l'intermédiaire d'ODBC et utilisable avec la bibliothèque DATABASE de PureBasic , regarde l'exemple dans la doc.
Et selon l'aide windows :
Pour ouvrir une source de données (ODBC), cliquez sur Démarrer, puis sur Panneau de configuration. Double-cliquez sur Outils d"administration, puis sur Sources de données (ODBC).
Publié : sam. 13/sept./2008 10:08
par Alopia
Merci,
En effet j'ai trouvé ça hier soir, depuis j'ouvre la base. Il reste à l'utiliser mais je progresse

Publié : sam. 13/sept./2008 10:37
par Kayne
Il y a aussi une solution plus simple qui consiste a faire un simple
createfile(1,nom_de_ta_base$)
Sinon si tu veux l'ouvrir dans obcd a partir de pure tu peut faire comme indiqué sur mon site:
Code : Tout sélectionner
- Constantes
; ----------
#ODBC_ADD_DSN = 1 ; Ajoute une source de donnée
#ODBC_CONFIG_DSN = 2 ; Configure la source de donnée
#ODBC_REMOVE_DSN = 3 ; Supprime la source
#DataBase = 1
#DSN = "PureBasic_DSN" ;nom de votre base
#Driver = "Microsoft Access Driver (*.mdb)" ;driver utilisé
;- Variables
; ---------
File.s = "C:\Documents and Settings\Hugo\Bureau\mabase.mdb" ;emplacement de la bdd
;- Procedures
; ----------
;** On ouvre la connection
; ----------------------
Procedure Makeconnection(Driver.s,Attributes.s)
result = OpenLibrary(1,"ODBCCP32.DLL")
If result <> 0
result = CallFunction(1, "SQLConfigDataSource", 0,#ODBC_ADD_DSN,Driver.s,@Attributes)
NewResult = CallFunction(1, "SQLConfigDataSource", 0,#ODBC_ADD_DSN,Driver.s,@Attributes)
CloseLibrary(1)
EndIf
ProcedureReturn result
EndProcedure ; fin de MakeConnection
;===============================================================================
;** On ferme la connection
; ----------------------
Procedure DeleteConnection(Driver.s,DSN.s)
result=OpenLibrary(1,"ODBCCP32.DLL")
If result
strAttributes.s = "DSN="+DSN
result = CallFunction(1, "SQLConfigDataSource", 0,#ODBC_REMOVE_DSN,Driver,strAttributes )
CloseLibrary(1)
If result
ProcedureReturn 1
EndIf
EndIf
EndProcedure ; fin de DeleteConnection
;*******************************************************************************
;Ensuite vous vous connectez comme ca:
;- Programme
; ---------
InitDatabase() ;ou UseODBCDatabase() pour les dernières versions
Makeconnection(#Driver, "DSN="+#DSN+";Description=Access File;DBQ="+File+";") ;ajoute la connexion
OpenDatabase(#DataBase, #DSN, "", "") ;ouvre la base de donnée
DeleteConnection(#Driver, #DSN ) ; ferme la connexion
Et si c'est la suite qui te pose problème, alors tu peut lire la suite du tuto mais c'est le début le plus difficile je pense.
http://tripamort.free.fr/tuto.php?actio ... =53#tuto53