IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PureBasic Discussion :

Utilisation des bases de données en PureBasic


Sujet :

PureBasic

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juin 2009
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 30
    Points : 37
    Points
    37
    Par défaut Utilisation des bases de données en PureBasic
    Bonjour, je viens juste de débuter en pure basic, (je suis professionnelle en vb) je suis au point zero en purebasic, je ne fais que lire et voir les exemples des codes sources mais ce que je nai pas encore trouvé, c'est: comment gérer les bases de données en purebasic? SVP, je veux un exemple de code complet: voici ce que je veux (en clair)

    1. Création d'une bdd access nom=MyBdd.mdb
    2. Création d'une table nom=MaTable
    3. ajouter 4 enregistrements dans ma table (comprenant 2 champs: nom de l'étudiant et la note obtenue NomEleve, NoteOb)

    4. fermer la base puis la réouvrir
    5. Lire ma table
    6. Supprimer l'enregistrement dont la note est inférieure à 10
    7. Fermer ma base


    Merci de votre réponse
    Fadila

  2. #2
    Responsable Purebasic

    Avatar de comtois
    Inscrit en
    Avril 2003
    Messages
    1 261
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 1 261
    Points : 9 924
    Points
    9 924
    Billets dans le blog
    8
    Par défaut
    Je ne connais rien aux bases de données, mais je peux tout de même te donner quelques pistes pour commencer.

    Extrait de la doc

    La bibliothèque database est un jeu d'instructions simple pour l'accès à SQLite ou à tous types de bases de données (Oracle, MySQL, Access, etc..) via l'API commune ODBC. La bibliothèque est basée sur des requêtes SQL pour lire / écrire des données dans une base. Il est donc recommandé de disposer d'une documentation si nécessaire.
    Je trouve Sqlite parfait pour se faire une petite base personnelle.
    Il est intégré à PureBasic, il n'y a rien à télécharger ou à configurer.
    Pour apprendre j'avais codé cet exemple (sources disponibles dans l'archive):

    http://purebasic.developpez.com/sour...i#sqlitelivres

    Tu peux aussi regarder l'exemple de l'aide , il montre comment créer une base Sqlite, comment créer une table et ajouter des enregistrements et comment les afficher.

    Exemple Sqlite simple

    Cet exemple devrait fonctionner avec un autre type de base (comme access) via ODBC en remplaçant la commande UseSQLiteDatabase() au début du code par la commande UseODBCDatabase() et c'est tout, le reste du code est identique quelque soit la base.

    Maintenant si tu tiens absolument à utiliser access, la doc indique ceci :

    Note : Sous Windows, avant d'employer cette bibliothèque il est nécessaire d'établir une « source de données utilisateur », ce qui rend votre base de données disponible par l'intermédiaire d'ODBC et utilisable avec cette bibliothèque. Pour plus d'informations, référez vous au document d'aide de l'ODBC de Windows.
    En glanant des infos ici et là, j'ai relevé ceci qui pourra peut-être t'aider :

    D'abord menu démarrer > exécuter > tape odbcad32 > source de données système > ajouter > pilote microsoft access :

    nom de la source de données : test_purebasic
    selectionner: choisit le fichier .mdb créé avec access

    et ensuite dans purebasic tu fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    If InitDatabase()
      If OpenDatabase(0,"test_purebasic","","")
        If DatabaseQuery(0, "SELECT NOW")
          While NextDatabaseRow(0)
            Debug GetDatabaseString(0, 0)
          Wend
        EndIf
      EndIf
    EndIf
    ou tu peux te connecter à ta base avec un code de ce genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    ; flype, juil 2006
     
    Enumeration 1
      #ODBC_ADD_DSN            ; Ajoute une source de données utilisateur.
      #ODBC_CONFIG_DSN         ; Configure/Modifie une source de données utilisateur existante.
      #ODBC_REMOVE_DSN         ; Supprime une source de données utilisateur existante.
      #ODBC_ADD_SYS_DSN        ; Ajoute une source de données système.
      #ODBC_CONFIG_SYS_DSN     ; Configure/Modifie une source de données système existante.
      #ODBC_REMOVE_SYS_DSN     ; Supprime une source de données système existante.
      #ODBC_REMOVE_DEFAULT_DSN ; Supprime la source de données définies par défaut.
    EndEnumeration
     
    #ODBC_DRIVER_MSACCESS = "Microsoft Access Driver (*.mdb)"
     
    Procedure.l MSAccess_AddConnection(name.s, database.s, hwnd.l = #Null)
     
      Protected attrs.s
     
      attrs + "UID="         + ";"
      attrs + "PWD="         + ";"
      attrs + "DSN="         + name + ";"
      attrs + "DBQ="         + database + ";"
      attrs + "FIL="         + "MS Access;"
      attrs + "Driver="      + "ODBCJT32.DLL;"
      attrs + "DefaultDir="  + GetPathPart(database) + ";"
      attrs + "Description=" + FormatDate("Créé le %dd-%mm-%yyyy, %hh:%ii:%ss;", Date())
     
      ReplaceString(attrs, ";", #NULL$, 2)
     
      ProcedureReturn SQLConfigDataSource_(hWnd, #ODBC_ADD_DSN, #ODBC_DRIVER_MSACCESS, attrs)
     
    EndProcedure
     
    Procedure.l MSAccess_RemoveConnection(name.s, hwnd.l = #Null)
     
      ProcedureReturn SQLConfigDataSource_(hWnd, #ODBC_REMOVE_DSN, #ODBC_DRIVER_MSACCESS, "DSN="+name)
     
    EndProcedure
     
    If UseODBCDatabase()
     
      DSN.s = "pbtest"
     
      If MSAccess_AddConnection(DSN, "c:\test.mdb")
     
        If OpenDatabase(0, DSN, "", "")
     
          If DatabaseQuery(0, "SELECT NOW")
            If NextDatabaseRow(0)
              Debug GetDatabaseString(0, 0)
            EndIf
          EndIf
     
          If DatabaseQuery(0, "SELECT * FROM personne")
            While NextDatabaseRow(0)
              Debug GetDatabaseString(0, 0)
              Debug GetDatabaseString(0, 1)
              Debug GetDatabaseString(0, 2)
            Wend
          EndIf
     
        EndIf
     
        MSAccess_RemoveConnection(DSN)
     
      EndIf
     
    EndIf
    Je ne l'ai pas testé, je n'ai pas access.
    Vous souhaitez participer à la rubrique PureBasic (tutoriels, FAQ, sources) ? Contactez-moi par MP.

Discussions similaires

  1. Réponses: 3
    Dernier message: 27/10/2011, 17h38
  2. Réponses: 0
    Dernier message: 08/02/2011, 18h52
  3. Petit programme utilisant des bases de données
    Par arwin dans le forum Langages de programmation
    Réponses: 2
    Dernier message: 25/03/2009, 22h59
  4. utilisation des base de données en C#
    Par totolou dans le forum C#
    Réponses: 3
    Dernier message: 11/06/2007, 18h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo