IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 Delphi Discussion :

findkey en delphi 2010


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2010
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 17
    Par défaut findkey en delphi 2010
    je cherche l'équivalent de la fonction findkey delphi 2007 en delphi 2010.

  2. #2
    Membre extrêmement actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2010
    Messages : 954
    Par défaut
    bonjour,

    personnellement j'ai jamais utilisé cette fonction, par contre je te propose d'utilisé la fonction locate.

  3. #3
    Membre averti
    Inscrit en
    Mars 2010
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 17
    Par défaut
    est-ce que la fonction Locate peut m'aider à vérifier le dédoublement de clé ?

  4. #4
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 593
    Billets dans le blog
    65
    Par défaut
    Bonjour,
    pour obtenir une bonne réponse sur le Findkey (comme sur le Locate) , il aurait déjà fallu indiquer quels composants de connexion vous utilisiez.
    en fait "TTable.Findkey" existe en D2010

    si par Findkey vous entendiez : vérifier s'il y a des clés en double (ce qui voudrait dire que vous n'avez pas indiqué de contraintes d'unicité !)
    un SQL est parfois plus simple ,quelque chose comme ceci
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT CLE,COUNT(CLE) FROM TABLE 
    GROUP BY CLE
    HAVING COUNT(CLE)>1

  5. #5
    Membre Expert
    Avatar de e-ric
    Homme Profil pro
    Apprenti chat, bienfaiteur de tritons et autres bestioles
    Inscrit en
    Mars 2002
    Messages
    1 568
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Apprenti chat, bienfaiteur de tritons et autres bestioles

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 568
    Par défaut
    Salut

    FindKey est une méthode de recherche s'appuyant sur l'index courant, c'est surtout utile pour les bases de type Paradox (navigationnelles), pour un vrai serveur SQL, son emploi n'est, si je me souviens bien, pas vraiment pertinent.

    Comme SergioMaster le dit, il serait bon de savoir sur quel type de base l'appliquer.

    @+

    M E N S . A G I T A T . M O L E M
    Debian 64bit, Lazarus + FPC -> n'oubliez pas de consulter les FAQ Delphi et Pascal ainsi que les cours et tutoriels Delphi et Pascal

    "La théorie, c'est quand on sait tout, mais que rien ne marche. La pratique, c'est quand tout marche, mais qu'on ne sait pas pourquoi. En informatique, la théorie et la pratique sont réunies: rien ne marche et on ne sait pas pourquoi!".
    Mais Emmanuel Kant disait aussi : "La théorie sans la pratique est inutile, la pratique sans la théorie est aveugle."

  6. #6
    Membre averti
    Inscrit en
    Mars 2010
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 17
    Par défaut
    salut, j'utilise une base de données access ou bien sql server , donc je travaille avec adotable

  7. #7
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 086
    Par défaut
    Citation Envoyé par sarahlareleve Voir le message
    je cherche l'équivalent de la fonction findkey delphi 2007 en delphi 2010.
    Eh bien FindKey !!! cela existe toujours même en XE5

    Bde.DBTables.TTable.FindKey
    Datasnap.DBClient.TCustomClientDataSet.FindKey
    FireDAC.Comp.DataSet.TFDDataSet.FindKey

    Une question bien mal posé qui aurait du être

    Citation Envoyé par sarahlareleve Voir le message
    je cherche l'équivalent de la fonction findkey du BDE en ADO.
    le Locate fera parfaitement l'affaire

    Sinon pour SQL Server, évite des TADOTable au profit de TADOQuery aussi bien pour les SELECT que les INSERT ou UPDATE, il est toujours mieux de maitriser le SQL qui circule !

    Si tes tables sont correctement défini dans SQL Server avec les contraintes nécessaire et si par chance ton ADO récupère correctement les méta-données,
    il devrait contenir dans TADOTable.IndexDefs un ixPrimary ou ixUnique
    dans TIndexDef.Options

    Ce qui devrait interdire le post, une exception (voir aussi OnPostError)
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

Discussions similaires

  1. Delphi 2010 disponible!
    Par nostroyo dans le forum EDI
    Réponses: 71
    Dernier message: 06/10/2010, 09h16
  2. Réponses: 17
    Dernier message: 12/02/2010, 09h43
  3. Delphi 2010 disponible!
    Par nostroyo dans le forum Actualités
    Réponses: 32
    Dernier message: 29/08/2009, 15h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo