Aller au contenu
Yaggi

Bases de données sous Delphi...

Messages recommandés

salut,

 

 

 

ca fait plusieurs années que j'utilise des bases de données et g toujours pas capté pourquoi ca arrive d'avoir un message d'erreur : "Violation de Clé"... et puis d'un coup ca le fait plus et puis ca revient le lendemain j'en ai marre je capte pas !

 

ca arrive desfois au moment ou j'appelle des fonctions du type insert, last, etc. et quand j'execute un batchmove....

 

 

 

si qqn pouvais m'aider !

 

 

 

et autre chose : comment faire pour trier une BD suivant le champ que je veux... quand je me sert de IndexFieldNames il trie par rapport au premier champ et IndexName j'arrive jamais à m'en servir (il dit que l'index n'existe pas pourtant g mis des tites etoiles à chaque champ de ma base...)

 

 

 

merci d'avance !

Partager ce message


Lien à poster
Partager sur d’autres sites

"unique constraint violated" : tu insères des données qui existent déjà (du moins, pour ce qui concerne la clef primaire de ton enregistrement)

 

"parent key not found" : tu as une clef étrangère sur ta table (un truc qui correspond à des données dans une autre table), et il ne trouve pas l'enregistrement auquel tu fais référence

 

Si tu as une erreur, et que le lendemain elle n'y est plus (voire, 15 minutes plus tard) essaie de voir si tu as un "commit" à faire pour valider ta transaction, parce que ca sent à plein nez l'"autocommit" qui arrive après un certain laps de temps... (un timeout, koi)

 

 

 

punaise, tous ces termes anglais pour les BDD, c'est dingue !

Partager ce message


Lien à poster
Partager sur d’autres sites

y'a pas une interface "SQL" pour tes requêtes ? Tu utilises bien u lien ODBC pour attaquer ta base, non ? Il supporte pas les comandes SQL "brutes" ?

 

Paske, si tu peux rajouter "ORDER BY sketuveux" à la fin de ta requête, ca te triera le résultat comme tu veux (tu peux en mettre autant que tu veux, et spécifier ASC ou DESC suivant que tu veux un ordre croissant ou décroissant - et si y'a rien, c'est ASC implicitement)

Partager ce message


Lien à poster
Partager sur d’autres sites

Pour ce qui est des index, je doute de l'interêt d'indexer chaque colonne des tables de ta base... (ou alors c'est pour créer un index sur l'intégralité des colonnes, ce qui n'a absolument aucun interêt : un index est censé accélérer les recherches en n'utilisant que quelques colonnes pour chercher)

Partager ce message


Lien à poster
Partager sur d’autres sites

A propos, tu as quoi comme base de donées à l'autre bout ??

 

Tu utilises SQL*Net pour accéder à une base ORACLE ?

 

Tu utilises un lien ODBC pour taper sur un fichier Excel (AARRRRGGGGHHHHHH) ?

 

Tu utilises un lien ODBC pour taper sur une base Access (ARGH aussi mais un peu moins) ?

 

Tu as un autre truc intégré qui vient de chez borland ?

Partager ce message


Lien à poster
Partager sur d’autres sites

en fait j'utilise une table paradox 7...

 

 

 

pour le tri je viens de trouver un tut j'ai ajouté des index secondaires dans ma table et ca marche parfaitement...

 

 

 

et pour le message d'erreur il me met "viloation de clé" c tout et aucun truc anglais dont t'as parlé, à l'instant même il me l'a fait quand g changé la position du curseur de l'enregistrement en cours alors que je venais de faire un batchmove...

 

 

 

merci quand même !

Partager ce message


Lien à poster
Partager sur d’autres sites

c encore moi...

 

 

 

g "résolu" le problème ca y est il me met plus violation de clé....

 

 

 

en fait j'avais oublié de mettre quelques Table.Post par ci par là... en fait l'erreur était du style "parent key not found" comme tu disais dans ta réponse...

Partager ce message


Lien à poster
Partager sur d’autres sites

Ca plante sur quelle action, exactement ?

 

tu copies des enregistrements d'une table dans une autre ? (chuis désolé, il va falloir expliquer en détail les fonctions, vu que j'ai jamais touché à Paradox sous Delphi...)

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant

×