begin process at 2010 02 10 13:24:15
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Base de Donnees

 > ACCESS AVEC TADOTABLE (BASE DE DONNÉES)

ACCESS AVEC TADOTABLE (BASE DE DONNÉES)


 Information sur la source

Note :
9,25 / 10 - par 4 personnes
9,25 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Base de Donnees Niveau :Débutant Date de création :07/02/2005 Date de mise à jour :07/02/2005 12:55:14 Vu / téléchargé :10 532 / 3 555

Auteur : MAURICIO

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (27)
Ajouter un commentaire et/ou une note


 Description

Cliquez pour voir la capture en taille normale
Base de données Access avec TADOConnection/TADOTable



 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  •   ADO Access
    • AccessDemo.cfgTélécharger ce fichier [Réservé aux membres club]Voir ce fichier426 octets
    • AccessDemo.dofTélécharger ce fichier [Réservé aux membres club]Voir ce fichier2 324 octets
    • AccessDemo.dprTélécharger ce fichier [Réservé aux membres club]Voir ce fichier288 octets
    • AccessDemo.dskTélécharger ce fichier [Réservé aux membres club]6 520 octets
    • AccessDemo.resTélécharger ce fichier [Réservé aux membres club]876 octets
    • database.mdbTélécharger ce fichier [Réservé aux membres club]622 592 octets
    • dm_access.dcuTélécharger ce fichier [Réservé aux membres club]4 169 octets
    • dm_access.ddpTélécharger ce fichier [Réservé aux membres club]51 octets
    • dm_access.dfmTélécharger ce fichier [Réservé aux membres club]1 525 octets
    • dm_access.pasTélécharger ce fichier [Réservé aux membres club]Voir ce fichier2 181 octets
    • f_prin.dcuTélécharger ce fichier [Réservé aux membres club]9 119 octets
    • f_prin.ddpTélécharger ce fichier [Réservé aux membres club]51 octets
    • f_prin.dfmTélécharger ce fichier [Réservé aux membres club]14 045 octets
    • f_prin.pasTélécharger ce fichier [Réservé aux membres club]Voir ce fichier4 126 octets

Télécharger le zip


 Historique

07 février 2005 12:55:15 :
Connection dans la OnCreate du DataModule.

 Sources du même auteur

Source avec Zip Source avec une capture DEMO DE MON COMPO TCYWEBBROWSER - VISUALISER DES PAGES HTML ...
Source avec Zip Source avec une capture COMPOS TCYCOMPONENTS V2.6
Source avec Zip Source avec une capture JETTER LES MESSAGES DANS "MESSAGE QUEUE" APRÈS UN LONG CODE
LIBRAIRIE DE FONCTIONS DE GESTION DE SOUS-CHAINES.
Source avec une capture MAILS AVEC INDY10 : QUE FAIRE LORSQUE LE CONTENU AU FORMAT M...

 Sources de la même categorie

Source avec Zip INTERBASE FIREBIRD IBEXPERT par opgiat
Source avec Zip CREE ALIAS AUTOMATIQUEMENT CREATION REPERTOIRE ET TABLE AUSI par opgiat
Source avec Zip CRÉE UN RÉPERTOIRE ET CRÉE CES TABLES PAR PROGRAMME par opgiat
Source avec Zip Source avec une capture CONNEXION MYSQL ET RECUPERATION DANS BASE ACCESS par eli42
Source avec Zip Source avec une capture LIER DEUX TDBGRID par cantador

Commentaires et avis

Commentaire de elguevel le 15/09/2005 18:34:38

Très bonne source.

Mais j'ai une question :

Imaginé que vous ayez les enfants des contacts à gerer : Donc vous avez votre table contact, votre table enfants, et une table de jointure entre les deux (Appartient_A).

Comment gerer les jointures avec ce systeme ? on rajoute un TADOTable ?

Merci.

Damien.

Commentaire de MAURICIO le 15/09/2005 18:37:57

C' est exactement comme tu dis !!!

Commentaire de elguevel le 15/09/2005 18:42:11

Ouaa... plus rapide tu meurt :) lol

Et concretement ? car j'ai justement ajouter un autre TADOTable, un autre DataSource, mais voila çà m'avance pas bcp :s

Bon j'vais chercher dans cette direction ... merci !

Commentaire de MAURICIO le 15/09/2005 18:45:01

Il faut que tu crées les tables dans le fichier acess (.mdb)avec ACCESS justement...

Commentaire de elguevel le 15/09/2005 18:50:14

C'est fait, en faite j'texplique mon cas : j'ai déja ma base de données faite avec Access 2000 (pour une divX Tèque personnalisé), nikel et tout.

J'ai crée les tables : FILM, ACTEUR, GENRE, FILM_ACTEUR (jointure). C'est qu'un debut pour le moment je pense l'agrandir par la suite.

J'ai meme fait mes relations sous MS Access.

Après je me suis inspiré de ta source pour créer mon projet, tout nikel, pratiquement pas une ligne de code et tout fonctionne niquel, là ou je me retrouve bloqué c'est pour afficher les acteurs correspondant au film via la table de jointure, et aussi pour retrouver le nom du genre via le numero de genre.

Voila .. j'chai pas si j'ai été claire ?

Merci beaucoup.

Commentaire de MAURICIO le 15/09/2005 18:52:33

Ce qu' il te faut c' est déclarer des champs de type lookup dans ta table de ton compo TADOTable!!!

Commentaire de MAURICIO le 15/09/2005 18:54:33

Pour plus de précision, fait un double clique sur le compo, puis fait un click droit, il devrait y aparaitre "new field"!!!

Commentaire de elguevel le 15/09/2005 18:58:35

Merci c'est cool j'ai trouvé, je vais voir ce que je peux faire avec çà.

Tient je t'ai mis 10/10 pour avoir eut la patience de repondre,
c'est super sympa merci ;-)

Cordialement.

Damien.

Commentaire de MAURICIO le 15/09/2005 19:00:58

De rien de rien !

Commentaire de elguevel le 17/09/2005 11:49:32

bon en faite j'en chie toujours car je sais pas quel propriétés appliquer a mes champs de mes TADOTable ni s'il faut dire à la table mère si faut que son champs pointe sur la fille ou l'inverse.. enfin j'ai du mal à m'exprimer mais c'est super mal documenté sur le net, pour ne pas dire qu'on n'aborde pas du tout les jointures !

Cordialement.

Damien

Commentaire de MAURICIO le 19/09/2005 11:40:49

Les calculated fields te permettent de préciser la valeur de tes champs dans l' événement OnCalcFields de la table. Imagine que tu as une table avec les champs QTD et VALEUR_UNITAIRE. Alors tu peux créer un Champ de type CalcField de nom TOTAL et de type Float. Ce champ n' est donc pas gardé dans la table physiquement puisqu' il n' existe pas mais pourra être visualisé avec sa valeur correcte gràce à l' evenement OnCalcField :
Table1TOTAL.Value := Table1QTD.Value * Table1VALEUR_UNITAIRE.Value;

Les champs lookup sont des champs qui vont chercher leur valeur sur une autre table. C' est très facile à utiliser.
Imagine que tu as une table de produits nommée tabProduits et une table fournisseur de ces produits nommée tabFour avec les champs COD et NOM.
Si tu veux visualiser le fournisseur pour chaque produits tu dois faire new field (dans la table tabProduits). Dans "Name" tu peux écrire ce que tu veux comme par ex. NomFour, c' est le nom que tu donnes au champ. Le type et la taille doivent être les mêmes que ceux dans le champ NOM de ta table tabFour. FieldType est donc de type Lookup.
En ce qui concerne la partie lookup definitions:
"KeyFields" représente la clé étrangère dans tabProduits. Qu 'est ce que ça veux dire? tout simplement que tu dois avoir un champ COD_FOUR dans ta table tabProduits. COD_FOUR possède la valeur du code fournisseur pour chaque produits.
DataSet est donc tabFour, c' est la table dans laquelle obn veut rechercher une valeur.
Lookup keys est tabFourCOD, ce qui veut dire que pour la valeur dans tabProduitsCOD_FOUR on va positionner le curseur de tabFour sur cette valeur pour pouvoir retourner la valeur du champ specifié dans Result field.
Result field est TabFourNOM, c' est la valeur du champ renvoyé.
J' espère que mes explications t' ont aidé.
A+

Commentaire de elguevel le 22/09/2005 19:30:14

Pour les clés etrangères niquel... pour les tables de jointures çà me plante tout...

En gros j'ai çà :

----------               ------------               --------------
|  FILM  |               | FILM_ACT |               |   ACTEUR   |
----------               ------------               --------------
|#ID_FILM|---------------|#ID_FILM  |       |-------|#ID_ACTEUR  |
|        |               |#ID_ACTEUR|-------|       | NOM_ACTEUR |
|  ...   |               |          |               |            |
----------               ------------               --------------

=> Et je voudrai recupérer tous les acteurs d'un film !


Mais bon j'vais essayé de me demerder un peu tout seul car j'doit te saouler là :-)

en tout cas tu ma déja bcp aidé !!!

Merci encore.

Damien

Commentaire de NetFree le 02/02/2006 00:41:44

salut, jai pris example sur ta source pour faire un programme de gestion de photo mais, on ne peux pas mettre dimage en format .jpg ... Tu serais comment règler se probleme?

merci

Commentaire de NetFree le 02/02/2006 00:43:42

J'ai oublier, il est possible de faire une rechrcher... example; on tape un # et sa va a sa numero dans le champs "cod"

merci encore

Commentaire de MAURICIO le 02/02/2006 10:11:51

Non désolé, je ne sais pas comment faire pour garder des jpgs ...

Moi aussi j'en aurais besoin si quelqu' un sait comment faire!
A+

Commentaire de NetFree le 02/02/2006 20:53:30

ok .. jai trouver pour le jpeg mais jai pas trouver pour faire une recherche... tu serais pas comment?

pour le jpeg:
tu met le use "jpeg"
tu met deux Timage avec un: image1 et lautre image2
tu met la valeur visible a false
et tu me le code :

procedure TFrmPrin.SBAssignPhotoClick(Sender: TObject);
begin
  If OpenPictureDialog1.Execute
  Then
    Try
    image1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
    Image2.Picture.Bitmap.Assign(Image1.Picture.Graphic);

      DMA.ADOClients.Edit;
      DBImg.Picture := image2.Picture;
      DMA.ADOClients.Post;
    Except
      ShowMessage('Registre actuellement en edition !');
    End;
end;


voila, moi sa marche... masi pas le recherche :(

Commentaire de NetFree le 02/02/2006 20:54:19

J'ai encore oublier.... tu sais comment faire pour mettre la taile de la photo la grandeur du DBImg ??? pcq la ma photo est trop grande..

merci

Commentaire de MAURICIO le 03/02/2006 10:18:41

Bem oui ça marche mais le problème c' est que c' est un bitmap qui est gardé dans la base de données ...

Pour la photo tu peux jouer avec la propriété Stretch ou encore redimensionner ton DBImage :
DBImage.Width := DBImg.Picture.Bitmap.Width;
DBImage.Height := DBImg.Picture.Bitmap.Height;
A+

Commentaire de mcapp le 19/04/2006 00:55:38

Source très intéressante !
J'ai beaucoup de plaisir à l'étudier !
Mais je me demande s'il me sera possible d'aboutir à un projet un peu différent dans lequel la modification de champ d'un enregistrement se ferait en cliquant sur cet enregistrement ce qui amène ouverture d'une nouvelle Unit ("formulaire") que l'on complète pour les modifier.
Ensuite, à la fermeture du formulaire, la table est mise à jour.
J'ai déjà fait un projet de ce type qui fonctionne bien, mais sans insertion possible d'un champ image avec un TBDImage.
Je voudrais donc partir de ton projet (avec TDBImage) mais utiliser l'ouverture d'un 2ème Unit ("formulaire") pour enregistrer ou modifier un enregistrement (avec champ Photo visible aussi sur ce formulaire).
Penses-tu que ce soit envisageable ?
Merci et Félicitations pour vos compétences à vous, les "Grands animateurs" de ce site !

Commentaire de mcapp le 19/04/2006 01:30:53

Excuse-moi !
Je viens d'avancer dans ma réflexion en étudiant encore davantage ton projet.
Je pense qu'il me suffira d'insérer une requête sur le formulaire
puis de placer des TEdit comme pour N°tel sur ton projet ainsi que la TDBImage.
Je vais étudier ensuite l'utisation de tes procédures pour lire la table ou enregistrer les changements dans la table.
Tu peux me confirmer que je suis "sur la bonne voie ?"
Merci !  

Commentaire de MAURICIO le 19/04/2006 11:49:25

Salut MCAPP,
ce que tu veux faire est très simple:
-Tu mets la table en edit mode
-Tu ouvres en ShowModal la 2eme form
-En fermant en cliquant sur un bouton Ok tu fais le Post de la table ou Cancel si l' utilisateur clique sur un bouton annuler.

Remarque: n' utilise pas de TEdit mais les TDBEdit :)
A+

Commentaire de mcapp le 21/04/2006 13:44:16

Salut Mauricio,
Merci pour tes conseils !
Dans le code, on a :

confirmation :=  MessageDlg('Désirez-vous enregistrer les modifications',
                               mtConfirmation, [mbYes, mbNo, mbAbort], 0);

Je ne trouve pas ces 3 composants button dans le message de dialogue.
Comment puis-je modifier le texte du bouton mbAbort pour remplacer "Abandonner" par "Ne pas fermer" par exemple ?
Merci !

Commentaire de MAURICIO le 21/04/2006 15:07:12

Vous en avez révé, Mauricio l' a fait:
http://www.delphifr.com/codes/MESSAGEDLG-DANS-IMPORTE-QUEL-LANGUE_28735.aspx

A+  :)

Commentaire de mcapp le 21/04/2006 22:34:40

Merci Mauricio pour ton aide !
Mais, je ne suis que débutant et hélas je dois avouer que je n'ai pas trouvé comment appeler cette fonction.
Je l'ai placée dans le code avant la procédure TFich.FormCloseQuery(Sender: TObject;  var CanClose: Boolean );
Quelle ligne écrire dans la procédure pour qu'elle utilise la fonction ?
A+

Commentaire de JackNUMBER le 22/12/2007 10:52:31 10/10

superbe source !!
dommage que l'on puisse rechercher que par le code (ici du fournisseur).


merci beaucoup !

Commentaire de lord948 le 29/12/2008 14:30:20

Bonjour.
J'aimerai savoir si c'est prossible de crée une relation en les tables access avec le compo TADOCommand(SQL), et comment les utliser sous delphi
Merci.

Commentaire de donkeyz le 12/11/2009 09:30:30

Bonjour,
comment faites-vous pour insérer une image dans la mdb ?
Si je le fait, sa m'apparait sous forme Package et non Donnée binaire
puis delphi ne peut l'appeler.
Aider-moi s.v.p

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,920 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales