realbasic-nug.fr
[Top] [All Lists]

Re: postgresql

To: REALbasic NUG French <realbasic-nug dot fr at lists dot realsoftware dot com>
Subject: Re: postgresql
From: Michel LO <michel dot lo at albireo dot biz>
Date: Tue, 9 Jan 2007 15:55:22 +0100
Delivered-to: listarchive at realsoftware dot com
Delivered-to: realbasic-nug dot fr at lists dot realsoftware dot com
References: <FA8559B7-CD58-42A0-9263-354F673206C4 at mac dot com>
Il faut faire un recordset

dim rs as recordset
dim query as string

query="SELECT * FROM TABLE"
rs=db.SQLSelect(query)

Pour lire le record set :

while not rs.eof
 toto=rs.IdxField(1).StringValue // voir suite explications
wend

Evidemment, à la palce de toto, il faut mettre l'endroit où on rage, ce peut être un listbox, un tableau vetoriel, etc...

le 1 du IdxField est le numéro de rang du champ dans le recordset, le premier champ est 1 (et pas 0)

A la place de stringvalue, tu peux mettre la propriété que tu veux : le retour de IdxField est une classe databaseField qui peut avoir comme attribut beaucoup de choses comme BooleanValue, Datevalue, double value, value, stringvalue etc... Sur postgresql, je ne sais pas, mais sur RealSQLDatabase, le moteur de la db se fout totalement ce qui est défini dans le champ (on parle en fait de liteSQL), et c'est la propriété qui défini l'interprétation du champ de ce qui est rangé dans la db


Michel Lo
BELT
45, rue Aristide Briand
92300 LEVALLOIS-PERRET

L'intégrité de ce message n'étant pas assurée sur internet, BELT ne
peut être tenue responsable de son contenu. Toute utilisation ou diffusion non autorisée est interdite. Si vous n'êtes pas destinataire de ce message,
merci de le détruire et d'avertir l'expéditeur.

The integrity of this message cannot be guaranteed on the Internet.
BELT can not therefore be considered responsible for the contents.
Any unauthorized use or dissemination is prohibited. If you are not the
intended recipient of this message, then please delete it and notify the
sender.



Le 9 janv. 07 à 15:00, Robin de Kat a écrit :

Bonjour,

Sur les conseils de Pierre Groleau, je suis en train de tester la version demo de realbasic version 6. (je viens du monde 4D)

Je voudrais savoir ce que je dois acheter (et si c'est possible avec RB) pour réaliser l'application qui aura les contraintes suivantes:

- Six utilisateurs doivent pouvoir se connecter simultanément à une base de données
- Je veux utiliser PostgreSQL comme moteur de base de donnée
- Un seul développeur sur un seul poste de travail
- L'alimentation de la base de donnée se fera essentiellement par la récupération d'un fichier texte (au format csv)
- Travail sur Mac uniquement

J'ai pu me connecter sans problème à une base existante grâce au code suivant (grâce au plugin postgresql):

  Dim db as PostgreSQLDatabase
  db= New PostgreSQLDatabase
  db.host="localhost"
         //db.port=5432
  db.DatabaseName="MaBase"
  db.Username="utilisateur"
  db.Password="motdepasse"
  If db.connect then
    //proceed with database operations
  else
    MsgBox "The connection failed."
  end if

Par contre, je ne trouve pas de documentation pour accéder aux enregistrements. Par exemple,
SELECT * FROM TABLE
ne passe pas à la compilation



<Prev in Thread] Current Thread [Next in Thread>