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

Free Pascal Discussion :

Accéder à une base SQLite [Free Pascal]


Sujet :

Free Pascal

  1. #1
    Membre averti
    Avatar de joreveur
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2010
    Messages
    293
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2010
    Messages : 293
    Points : 365
    Points
    365
    Par défaut Accéder à une base SQLite
    Bonjour
    j'ai une base SQLite avec plusieurs tables que je peux mettre à jour avec l'extension de Firefox SQLite Manager.
    Est-t-il possible d'accéder à ces tables avec FreePascal (sans passer par Lazarus) et éventuellement faire des requêtes SQL ?

    Pour Info je suis sous Linux

    Bien à vous

  2. #2
    Membre averti

    Homme Profil pro
    Diverses
    Inscrit en
    Février 2014
    Messages
    122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Diverses

    Informations forums :
    Inscription : Février 2014
    Messages : 122
    Points : 428
    Points
    428
    Par défaut
    Normalement, oui c'est possible. Les composants d'accès aux bases de données sont fournis avec FreePascal et donc utilisables sans Lazarus (à l'exception des composants visuels bien sûr). En revanche tu vas devoir créer par le code tous les composants que tu déposes simplement sur une fiche ou un datamodule habituellement. Une autre solution qui peut, peut-être, marcher est de créer une application Lazarus classique avec le widgetset nogui (s'il existe toujours).

  3. #3
    Membre averti
    Avatar de joreveur
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2010
    Messages
    293
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2010
    Messages : 293
    Points : 365
    Points
    365
    Par défaut
    Bonjour,

    sais-tu si il y a de la documentation freepascal pour ce sujet ?

    Bien à toi

  4. #4
    Membre averti

    Homme Profil pro
    Diverses
    Inscrit en
    Février 2014
    Messages
    122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Diverses

    Informations forums :
    Inscription : Février 2014
    Messages : 122
    Points : 428
    Points
    428
    Par défaut
    Je n'en connais pas. Mais il y a quelques exemples dans le dossier "packages/fcl-db/src/sqlite" des sources de FreePascal.

  5. #5
    Membre averti
    Avatar de joreveur
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2010
    Messages
    293
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2010
    Messages : 293
    Points : 365
    Points
    365
    Par défaut
    Bonjour
    en fouillant un peu sur le net j'ai trouvé un peu de code et en l'adaptant - je ne maitrise pas tout - j'arrive à mettre à jour une petite base de données Sqlite
    base dont j'ai créé la structure à la main
    voila le code

    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
    program Sqliteajout;
     
    uses
    	db, 	sqlite3ds,  SysUtils;
    var
    	SqLiteDemo: TSQLite3Dataset;
    	b_prenom,b_nom,b_age: TStringField;
    	Prenom,Nom,Age,Rep:string;
     
    begin
    repeat
    	SqLiteDemo := TSqlite3Dataset.Create(nil);
    	 Try
    	 with SqLiteDemo do
    	 begin
    		FileName := 'essai01.sqlite';
    		TableName := 'clients';
    		PrimaryKey := 'Id';
     
    		Sql := 'select Id,  nom, prenom, age from clients limit 1';
    		Open;
     
    		b_prenom := TStringField(Fields[1]);
    		b_nom := TStringField(Fields[2]);
    		b_age := TStringField(Fields[3]);
     
    		write('Prénom ? ');	readln(Prenom);  
    		write('Nom ? ');readln(Nom);  
    		write('age ? ');readln(Age);  
     
    		Append;
    			b_nom.Value := Nom;
    			b_prenom.Value := Prenom;
    			b_age.Value := age;
    			ApplyUpdates;
    			Close;
    	 end;
    	finally
    	SqLiteDemo.Free;
    	end;
     
    	Write('Entrée pour nouvel enregistrement ou * pour quitter ');
    	Readln(Rep);
    until Rep='*'
    end.
    et voici le résultat après plusieurs saisies

    Nom : sqlite_pascal.png
Affichages : 524
Taille : 29,4 Ko

    Merci de vos remarques.

    Bien Cordialement

  6. #6
    Membre du Club
    Homme Profil pro
    Sans
    Inscrit en
    Mai 2017
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Mai 2017
    Messages : 62
    Points : 51
    Points
    51
    Par défaut
    il faut auparavant installer sudo apt-get install libsqlite3-0-dev

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] comment accéder à une base sqlite depuis une application windows mobile
    Par binother dans le forum Windows Mobile
    Réponses: 0
    Dernier message: 28/12/2012, 11h31
  2. [JDBC]accéder une base mysql
    Par usmaiméne dans le forum JDBC
    Réponses: 2
    Dernier message: 23/03/2006, 10h52
  3. [MySQL] Accéder à une base de données distante en local
    Par kint dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 13/01/2006, 13h40
  4. [Sybase] Accèder à une base MS SQL Server
    Par skynet dans le forum Sybase
    Réponses: 7
    Dernier message: 02/09/2005, 15h13

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