begin process at 2012 02 09 23:37:44
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Foxpro

 > 

Divers

 > 

Débutant(e)

 > 

Création d'une base de donnée


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Création d'une base de donnée

dimanche 31 janvier 2010 à 10:12:46 | Création d'une base de donnée

LaMouche39


Bonjour,
Informaticien à la retraite (j'ai commencé en 1968....Assembleur, cobol, pascal, Dbase,Clipper 5), je me remets à la programmation avec foxpro 9 (j'aime pas le sudoku !)
Dans la création Base de données je ne trouve pas comment créer une relation entre 2 tables
ex
Date
libellé
Type---------> doit pointer sur une table Type (Code-Libellé-etc..)
Etc..

cela a partir de la fenetre Base de donnée
La connaissance ne sert à rien si elle n'est pas partagée
lundi 1 février 2010 à 19:58:01 | Re : Création d'une base de donnée

MichelAtoutFox

Membre Club
Bonjour,

Que cherches-tu à faire exactement? quand tu parles de "faire une relation...", est-ce que tu penses à quelque chose qui ressemblerait à un SET RELATION?

Il me semble (vu l'exemple que tu donnes), que tu veux créer une FOREIGN KEY. Mais je n'en suis pas certain, il faudrait que tu précises ton objectif (obtenir des données liées, ou maintenir une intégrité référentielle, ou???)

Pourrais-tu nous donner ici la structure de tes 2 tables, avec les index?

PS: je suis aussi un ancien de clipper, je vois bien les pbs que tu peux avoir
lundi 1 février 2010 à 20:48:35 | Re : Création d'une base de donnée

LaMouche39



Oui c'est du SET RELATION
Un champs lié automatiquement à une table qui par exemple affice un contenu plus détaillé

Un code intervention par exemple t'affiche les infos correspondante contenue dans une table indexée sur un code Intervention.

Dans Windev on fait ça en wisi on trace les liaison et ça génere les code correspondant.

J'ai pas trouvé dans foxpro de fonction " creer une relation.

table1
- Numero



La connaissance ne sert à rien si elle n'est pas partagée
lundi 1 février 2010 à 20:55:56 | Re : Création d'une base de donnée

LaMouche39


Zut j'ai pas fini mon poste !

Table1
Numero
Date
Libelle
Code Interv ---------> pointer sur table Intervention
Code Client ---------> pointer sur table code client
etc....

En clipper je sais gérer ça en ouvrant les 3 tables , un browse de la premiere + 2 browses annexe pour les 2 tables

mais normalement dans foxpro il doit y avoir un truc automatique non ?






La connaissance ne sert à rien si elle n'est pas partagée
lundi 1 février 2010 à 22:10:50 | Re : Création d'une base de donnée

MichelAtoutFox

Membre Club
Si tu veux faire un SET RELATION et des browse, tu peux toujours les faire en VFP9, qui assure une rétrocompatibilité du code.
Mais je ne te le conseille pas, et ce n'est pas ce que tu veux faire.

Il y a dans VFP plusieurs façons d'aborder ce problème, soit par du code, soit visuellement. Et ça peut se faire soit en mode procédural, soit en mode objet.

le préalable va toujours être de poser les index qui seront utilisés par fox. Il te faut une clé primaire sur chaque table (de préférence sur un champ Entier AutoIncrément sans signification pour l'application, ce qu'on appelle une clé subrogée), et dans les tables étrangères, un champ de type Entier, avec un index sur ce champ, qui contiendra la valeur de la clé primaire de l'enregistrement de la table parent.

C'est ce préalable qui va dans tous les cas accélérer l'établissement des jointures, et pemettre au designer de t'assister dans les mode visuels.

commençons par une réponse simple, en mode visuel procédural.
tu vas tout simplement créer une vue locale sur tes tables. Tu peux faire ça depuis la base de données en mode de design (MODIF DATA ... en ligne de commande), ou depuis l'explorateur de projet. Dans les 2 cas, tu va voir apparaitre une fenetre qui te permet d'ajouter les tables qui seront impactées, et tu vas établir les jointures par drag and drop. Le code SQL généré est visible et modifiable.

L'intéret de la vue, c'est qu'elle est persistante. une fois créée, sa définition est stockée dans le database (le dbc), et tu peux l'appeler par un simple use. tu la rafraichis avec un requery, tu peux ensuite l'améliorer en y ajoutant des paramètres.

Si tu veux traiter cette question en mode objet, tu utiliseras la classe CursorAdapter en mode d'accès natif.

Et tu vas ensuite abandonner tes browse pour afficher les cursors résultants dans des grilles (classe grid), que tu instancieras sur des forms.
mardi 2 février 2010 à 07:57:37 | Re : Création d'une base de donnée

LaMouche39


Merci beaucoup,c'est effectivement ça que je cherchais


La connaissance ne sert à rien si elle n'est pas partagée


Cette discussion est classée dans : base, donnée, type, création, libellé


Répondre à ce message

Sujets en rapport avec ce message

apparition d'une base de donnée [ par jee0404 ] bonjour,        En utilisant un programme que j'ai programmé en foxpro , il apparaît sans que je l'ai voulus une base de donnée nommer "0.dbf". Qu'est Vue !!! [ par spoutnic_37 ] aloha; Je fais un programme qui est basé sur un base de donnée foxpro(.dbc, .dbf)et qui sera mise dans une clef usb. Le probleme est que je voudrais Base de donnée perte de donnée [ par rom87 ] Bonjour; Un client viens de me renvoyer un base endommagée[^^sad1]. Après réparation il se trouve que j'ai perdu toutes les données d'une colonne da visualiser et limiter le nombre de connection à une base de donnée Foxpro9 sur le serveur [ par wdev1 ] Salut,et encore mille merci pour votre aide. Voilà, j'ai une base de donnée DBC FXP9 sur le serveur d'un réseau de 10 poste. mon souci et de controle Base de Donnée DBF [ par benaoun12 ] Bonjour, j'ai des fichiers .DBF et je veux l'affiche dans une tableau sous java, mais le problème est: il y a des données dans quelques colonnes sous interaction avec la base de donnée [ par limelloyd ] Bonjour, je travaille actuellement sur un logiciel fait en VFP6, mais je ne sais pas comment avoir accès au table, le fichier *.dbc n'existe pas! et j Utilisation de dll externes de type byte et egalement passage de parametre type byte [ par AKarim05 ] Bien le bonjour ; J'utilise la fonction "DefinirTipoConexao" dans une dll nomé "easyinner.dll " J'ai essayé la procedure suivante Declare integer Utilisation d'une DLL de type byte sous VFP 7 [ par AKarim05 ] Bonjour je voudrais utiliser une DLL de type Byte sous VFP7 sachant que dans Visual FoxPRO 7 les donnees de type "byte" ne figure pas dans la liste d Utilisation d'une DLL de type byte dans sous vfp7 [ par AKarim05 ] Bonjour ; J'utilise la fonction "DefinirTipoConexao" dans une dll nomé "easyinner.dll " J'ai essayé la procedure suivante Declare integer Definir Utilisation de dll externe de type BYTE [ par AKarim05 ] [^^yeuxenlair]] Bonjour. Comment pouvoir utiliser UNE fonction de type BYTE dans une dll externe sachant bien que dans vfp7 Le type Byte n'est pa


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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 : 5,522 sec (3)

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