begin process at 2012 02 09 22:49:17
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Foxpro

 > 

Formulaires

 > 

Général

 > 

vues et index


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

vues et index

mercredi 16 décembre 2009 à 09:08:04 | vues et index

Kenjo

Bonjour,
J'ai essayé de migrer ma base de donné en sql serveur,
et maintenant j'ultise des vues distantes pour acceder à ma base.
cependant, dans mon formulaire les liaisons entre les tables sont rompues dans l'environnement de données car je n'ai plus d'index et de clé.
Je vous remercie de me donner un astuce pour comment resoudre cela car quand je travaillais en local, tout allait si bien.
Comment peut-on avoir le data diagrams de sql server à partir d'un formulaire?
Merci encore
mercredi 16 décembre 2009 à 15:43:00 | Re : vues et index

MichelAtoutFox

Membre Club
Réponse acceptée !
Bonjour,

il te faut créer manuellement les index dont tu as besoin, après avoir ouvert tes vues distantes. L'endroit où tu vas le faire dépend de la façon dont tu ouvres tes vues.

Qu'appelles-tu le data diagrams de sql server?

Quelle version de Fox utilises-tu? quelle version de SQL server?
vendredi 18 décembre 2009 à 14:04:06 | Re : vues et index

Kenjo

bonjour Michel,

Merci pour la réponse.
database diagrams c'est comme le gérenateur de bases de donnés, du coté sql, là où on crée les liaisons entre les tables. En fait, en faisant celà dans Sql server je pensait que les vues seraient automatiquement liées , mais comme cela n'a pas été le cas, j'ai supprimé le database diagram.
J'utilise VFP9 et sqlserver2005.
si j'ai bien compris, j'enlève mes vues dans l'environnement de données et dans l'init du formulaire je fais use XXX et crée les index et relations comme ci c'était une table?


vendredi 18 décembre 2009 à 14:46:30 | Re : vues et index

MichelAtoutFox

Membre Club
Ah, beaucoup de confusions dans ta réponse:

le database diagrams dont tu parles ne fait pas partie de SQL server, mais de SSMS (Sql Server Management Studio), et ce n'est pas la même chose. SQL Server, c'est le serveur, c'est ce que fox requète par les vues distantes (entre autres), et SSMS, fox n'en connait strictement rien, parceque c'est un outil d'interface graphique pour gérer SQL Server (et ça n'est pas le meilleur, en tout cas pas dans tous les besoins). Il n'y a pas de liaison entre les tables en SQL, il y a des contraintes de clé étrangère. Et ça se crée dans du code, ou dans le générateur de tables, ou éventuellement dans un objet diagramme

Et non, ce n'est surtout pas dans l'init d'un form que l'on ouvre les tables ou les vues: quand l'init de ton form commence, tous les objets qu'il contient ont été déjà créés, tous les init de tous les controles de ce form ont été joués. Et si un seul de ces controles est lié aux données (ce qui devrait être le cas), l'init de ce controle va planter.

donc les ouvertures doivent être faites AVANT l'init du form, dans le LOAD de celui-ci, ou mieux dans le BEFOREOPENTABLE du dataenvironment. tu trouveras plusieurs exemples dans la présentation que j'ai faite sur ce sujet (les objets d'accès aux données)

En ce qui concerne les relations, c'est une technique que tu ne devrais pas utiliser si tes données sont sur SQL Server (et même en général avec des données en dbf, on ne fait plus comme ça). Tu devrais soit créer une vue distante dans fox, qui établit la jointure que tu obtenais dans cette relation, soit créer une vue DANS SQL server qui établit la jointure, et une vue distante dans fox qui pointe sur cette vue dans SQL.

pour les index, vérifie soigneusement leur expression, et ne crée que ceux dont tu as strictement besoin, au moment où tu en as besoin. vérifie bien qu'ils sont crés localement (pas sur une unité mappée). tu trouveras les infos sur ce sujet dans l'aide, en regardant les termes du config.fpw

samedi 19 décembre 2009 à 07:37:48 | Re : vues et index

Kenjo

Merci beaucoup,je me suis trompé en ecrivant init au lieu de load, mais c'etait deja parti.encore merci.
A propos des relations, j'utilise toujours set relation to pour tirer l'information dans une autre table, mais là donc je peux stocker mon champ par ex code_fournisseur en variable et créer une vue qui puisera cette variable dans la base fournisseur, n'est ce pas.
samedi 19 décembre 2009 à 07:49:00 | Re : vues et index

Kenjo

Et si je regroupe tout dans une vue (la base articles, le fournisseur, famille, tarif)ce ne serait pas un peu lourd.merci
samedi 19 décembre 2009 à 09:43:51 | Re : vues et index

MichelAtoutFox

Membre Club
En quoi une vue serait plus "lourde" qu'une relation? Un peu lourd, ça veut dire quoi??

Une relation effectue une jointure, comme le fait une vue. Mais cette pseudo-jointure est faite sur les curseurs locaux créés sur les vues distantes.

Une vue distante avec les mêmes jointures va envoyer sa requète au serveur SQL, et c'est lui qui va faire la jointure, et renvoyer un curseur résultant (on le voit très bien avec le profiler de SQL).

A ton avis, le plus efficace, c'est quoi?


Cette discussion est classée dans : base, sql, formulaire, index, vues


Répondre à ce message

Sujets en rapport avec ce message

Affichage des données provenant d'une base sql server different d'un poste à l'autre. [ par feeling__ ] Bonjour à tous !Voila j'ai developpé un utilitaire en fox pro qui attaque une base sql server et mon souci c'est que sur mon poste (post de dev) l'aff sql et installshield [ par hab162002 ] bonjour, j'ai un probleme avec sql server, j'ai concu une application client serveur qui marche tres bien dans mes 2 poste, foxpro est  installe dans Foxpro et Sql server [ par ILYESAHMED ] Bonjour Les Foxistes ; J’ai développé une application de gestion qui tourne bien ; j’ai utilisé : - [b]FoxPro 9 . - Base de données sous SQL Serv Base invalide [ par kiwilee ] Bonjour, Je rencontre une erreur que je n'arrive pas a comprendre lors de la création d'un index. Voici ma commande : use matable exclusive index on tranfert de données DBF => SQL 2008 [ par rao64 ] J'utilise VFP 9 sp2 pour faire des travaux ponctuels de contrôle sur des données. Actuellement je cherche à migrer des DBF vers une base SQL server 20 Base corrompu : la base dbc.dbc n'est pas une table valide [ par superjay ] Bonjour, une petit problème avec ma base elle m'affiche : la base dbc.dbc n'est pas une table valide cause : mon serveur nas a crasher je ne suis pa champ date venant de sql dans un grid foxpro [ par gregorian ] Bonjour, J'ai le soucis suivant. Je récupère un champ date d'une db sql dans un grid fox. Ce dernier m'affiche date + temp. Existe t'il un inputmas 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 charger un combo avec une requete sql [ par limelloyd ] salut, j'aimerais charger un combo avec une requete sql, je ne sais pas m'y prendre !!!


Nos sponsors


Sondage...

Comparez les prix

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 : 1,466 sec (4)

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