Salut
est ce que je peut partager une Base de données entre plusieurs clients, en utilisant les composant de connection Ttable, et Query? ou bien des autres composants, comment faire .
Merci.








Salut
est ce que je peut partager une Base de données entre plusieurs clients, en utilisant les composant de connection Ttable, et Query? ou bien des autres composants, comment faire .
Merci.
Bien sur que oui, mais il faut rajouter deux types de composants avant, qui sont TDatabase et TSession.
Au lieu d'avoir une architecture du type :
TTable-->TDataSource-->Composant
Tu auras une architecture plutot du type.
TDataBase-->TSession-->TTable-->TDataSource-->Composant
..si je ne me trompe pas

Je ne pense pas que BDE soit vraiment fait pour une BD réseau, je pense aux accès simultanés des clients, les MAJ ...
As-tu penser à Interbase ?








Merci bien waskol
je travaille avec une BD Interbase, est ce que avec cette methode plusieurs utilisateurs puevent verrouille un meme enregistrement au meme temps.
Mais si ça marche, c'est juste "un peu" lourd à déployer, c'est tout.Envoyé par ilyes

j'ai pas dit que ça marchait pas
je comprends pas ! Interbase et TTable:








Je suis desolé
Je vien de d'ecrire IBTable mais pas Ttable.
Non, mais il faut bien configurer to composant TSession, pour que tes clients ne déclarent pas le même nom de session auprès de la base de données distante. L'idéal, tu laisse faire Delphi en mettant la propriété AutoSessionName à True.Envoyé par bilal_ini
Pour le TDatabase, tu peux gérer la façon dont sont vérouillés les enregistrements avec la propriété TransIsolation, et dans le BDE il me semble qu'il y a aussi des paramètres disponibles à ce propos au niveau des drivers de Base de données.
Entre le BDE et Interbase, la différence est client/serveur or not.
Le BDE est très simple à déployer (l'install du BDE sur les postes et c'est tout, ce qui peut se faire en automatique d'ailleurs).
Par contre Interbase, nécessite qu'un serveur de BD tourne sur le serveur, donc on ne peut pas bouger un prog comme ca...
De plus, les accès avec le BDE sont nettement plus rapide du fait que l'on peut se passer la plupart du temps de requête SQL lourdes et pas toujours bien controlées avec les index.
Les 2 ont leurs avantages, et avant de trouver des avantages dans les bases comme Interbase, il faut déjà atteindre certains volumes, et un certains nombre de clients (approx au delà de 50 clients, et 1 ou 2 Go par table, vaut mieux de l'Interbase, sinon la souplesse des fonctions du BDE est bien plus pratique et rapide que des requêtes SQL dans Interbase ou autre client/serveur)
Enfin, ce n'est que mon avis et mon expérience !
Section Delphi
La mine d'or: La FAQ, les Sources
Un développement compliqué paraitra simple pour l'utilisateur, frustrant non ?
Notre revanche ? l'inverse est aussi vrai ;-)
Excusez moi les gars...
Bon, pour IBTable, ça marche pareil, tu as aussi un composant Session et un Composant Database. C'est calqué sur le même principe, sauf que tu travaille en Natif au lieu de passer par le BDE.
Pour ilyes :
Justement, c'est toi qui n'as pas compris je te répondais juste sur le Je ne pense pas que BDE soit vraiment fait pour une BD réseau. Le BDE, ça marche pour aussi pour le réseau, même interbase Monsieur. Ce n'est pas parceque tu utilise TTable que pour les tables Paradox ou DBase que ça ne marche pas pour Interbase, Oracle, Informix etc...
T'énerves pas, c'était pas le but.![]()

waskol, tu m'apprends rien làc'etait un avis perso d'où le "je pense".








La propriété Transisolation permet de définir la visibilité des enregistrements (en fait le type de transaction). Ce n'est pas du tout la même chose que poser un verrou sur un enregistrement.Pour le TDatabase, tu peux gérer la façon dont sont vérouillés les enregistrements avec la propriété TransIsolation, et dans le BDE il me semble qu'il y a aussi des paramètres disponibles à ce propos au niveau des drivers de Base de données.
D'ailleurs tout les sgbd ne le font pas (ou le font différement).
Ex : Access pas de transaction, mais vérrouillage de l'enregistrement au moment de l'entrée en édition.
Mysql: Vérrouillage d'enrg possible (support des transactions avec InnoDB)
Interbase : Support des transactions mais à ma connaissance, pas de possibilité de vérrouiller un enregistrement avant une opération. (si qqn à une manip pour faire un lock, ca m'intéresse.)
Effectivement, là j'ai sorti une c...rie.Envoyé par RamDevTeam
A part la propriété Exclusive de TTable ou TDatabase mise à True et qui fonctionne différemment d'une bbase de donnée à l'autre, Les composant "classiques" ne savent pas gérer ça.
Partager