Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1584 connectés 

  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  [delphi] recuperer les index d'une table

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[delphi] recuperer les index d'une table

n°899688
red factio​n
Posté le 16-11-2004 à 10:53:04  profilanswer
 

jutilise la methode suivante pour recuperer les index et primarykey

Code :
  1. adotable1.tablename:=lcFieldQuery;
  2. adotable1.open;
  3. for loopD:=0 to adotable1.IndexDefs.count-1 do begin
  4.    memo1.Lines.add(adotable1.indexdefs.items[loopD].name+' '+adotable1.indexdefs.Items[loopD].Fields);
  5. end;
  6. adotable1.Close;


 
le probleme c que c lent, +-20s pour parcourir une centaine de table vu que adotable recuperer toutes les lignes a a chaque fois (ce dont je nait pas besoin)
 
jai essaye avec adodataset mais la je nai plus aucune info concernant ces index (ca ne renvoie rien)  :cry:  
 

Code :
  1. adodataset1.CommandText:='select * from '+lcTablename+' where 0=1';
  2. adodataset1.open;
  3. for loopD:=0 to adodataset1.IndexDefs.count-1 do begin
  4.    memo1.Lines.add(adodataset1.indexdefs.items[loopD].name+' '+adodataset1.indexdefs.Items[loopD].Fields);
  5. end;
  6. adodataset1.Close;


 

mood
Publicité
Posté le 16-11-2004 à 10:53:04  profilanswer
 

n°899708
antp
Super Administrateur
Champion des excuses bidons
Posté le 16-11-2004 à 11:12:17  profilanswer
 

Dans les options de l'ADOTable il y a pas un truc pour travailler sur le serveur au lieu du client (keyset ou un truc du genre) ?
Sinon c'est peut-être au niveau de l'ADOConnection que ça se règle.

n°899723
red factio​n
Posté le 16-11-2004 à 11:33:23  profilanswer
 

jusque la je travaille en clUseClient pour les autres données que je doit rapatrier et cest tres rapide (4s pour comparer et synchroniser 2 databases assez consequentes)
 
en passant adotable en clUseServer je tombe a 3-4s uniquement pour afficher les index


Message édité par red faction le 16-11-2004 à 11:58:39
n°899754
red factio​n
Posté le 16-11-2004 à 12:26:20  profilanswer
 

pq adodataset ne me renvoie rien en ce qui concerne les index ?????
il n'y a pas moyen de recuperer ces infos (index+pk) par un adoQuery ?????


Message édité par red faction le 16-11-2004 à 12:46:10
n°899818
antp
Super Administrateur
Champion des excuses bidons
Posté le 16-11-2004 à 14:35:10  profilanswer
 

Parce qu'il ne te renvoie pas une table mais un ensemble de données créé à partir d'une table, cet ensemble de données n'ayant plus de clé je suppose
Essaie toujours avec un TADOQuery.


Message édité par antp le 16-11-2004 à 14:35:21
n°899955
red factio​n
Posté le 16-11-2004 à 17:15:39  profilanswer
 

TADOQuery n'a pas la donnée membre IndexDefs donc je trouve pas
 
Je n'ai tjs pas trouvé comment acceder aux valeurs par default des champs non plus :/

n°899996
red factio​n
Posté le 16-11-2004 à 17:47:03  profilanswer
 

[:yoyoz]

n°900732
red factio​n
Posté le 17-11-2004 à 15:10:11  profilanswer
 

[:yoyoz]

n°903924
red factio​n
Posté le 21-11-2004 à 12:15:04  profilanswer
 

bon jai finalement trouve avec openschema, mais c qd mm dommage que sur tout les topics que jai pu faire sur ce sujet personne ne ma conseillé sur cette methode..........
 
pas grave jai trouvé tout seul ....


Message édité par red faction le 22-11-2004 à 10:30:02
n°904327
Kyle_Katar​n
Posté le 21-11-2004 à 22:19:54  profilanswer
 

en tt cas c'est sympa de poster la réponse ;-)

mood
Publicité
Posté le 21-11-2004 à 22:19:54  profilanswer
 

n°904787
red factio​n
Posté le 22-11-2004 à 15:59:37  profilanswer
 

bon faut pas utiliser OpenSchema
la colonne DATA_TYPE est tjs a 130 que le type soit "memo" ou "text" dans MSAccess
 
c vraiment nimporte quoi :fou:
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  [delphi] recuperer les index d'une table

 

Sujets relatifs
Récupérer les cookies lors d'une connection httpprog delphi en service : problème certaines fonctions
Supprimer une ligne d'une table MySQLrecupérer chiffres dans une chaine
Couper la fin d'une image dans une table pour faire une barre de % ?[JAVA ou C++]Récupérer de la video à partir d'une carte pinnacle
[php/mysql]Creation multi tableRecuperer un morceau de chaine
Delphi : ODBC et SQL 7.0table jusqu'aux extrémiés de l'écran
Plus de sujets relatifs à : [delphi] recuperer les index d'une table


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR