|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre habitué
![]() Inscription : juillet 2003 Messages : 672 ![]() |
Bonjour,
Je débute avec IB, tout se passe cependant relativement bien mais j'ai un problème que je ne comprend pas : Je crée un nouvel enregistrement dans une table avec la procédure SQL INSERT sous Delphi 2007 à l'aide d'une IBQUERY. Nota : Comme il n'existe pas le type COUNTER comme dans ACCESS j'utilise précédemment une IBTABLE et sa fonction last pour connaître le N° du dernier enregistrement que j'incrémente pour l'affecter à ma PRIMARY KEY déclarée INTEGER ExecSQL s'effectue sans problème. Si je ferme mon logiciel, aucun problème l'enregistrement est créé je peux le lire dans IBConsole. Mais si dans la foulée je crée un nouvel enregistrement sans quitter le logiciel et que veux appliquer une nouvelle fois la procédure INSERT pour effectuer ce second enregistrement l'enregistrement précédent n'est pas créé ! et naturellment IB m'adresse une erreur sur PRIMARY KEY car IBTABLE Last n'a pas comptabilisé le précédent enregistrement Ais-je oublié d'appliquer une procédure SQL qui valide le premier enregistrement dans la table ? Si Oui laquelle ? |
|
|
00
|
|
|
#2 |
![]() ![]() Claude RenouleaudDéveloppeur informatique Inscription : février 2006 Messages : 4 760 ![]() |
Salut
Pourquoi tu n'utilises pas un générateur ? Ils sont spécifiquement dédié à fournir une valeur pour ta PK. @+ Claudius.
__________________
A la question technique que par MP/MV tu formuleras, la réponse aux oubliettes finira. |
|
|
00
|
|
|
#3 | ||
|
Membre habitué
![]() Inscription : juillet 2003 Messages : 672 ![]() |
Je viens d'ACCESS et de la bureautique !
C'est déja pas mal que j'ai pu créer uen base IB, mais les générateurs connais pas ! Voici un exemple d'une table de ma base : Code :
|
||
|
|
00
|
|
|
#4 | |
![]() ![]() Claude RenouleaudDéveloppeur informatique Inscription : février 2006 Messages : 4 760 ![]() |
Re,
Citation:
Je pense que y verra plus clair après. @+ Claudius
__________________
A la question technique que par MP/MV tu formuleras, la réponse aux oubliettes finira. |
|
|
|
00
|
|
|
#5 |
|
Membre habitué
![]() Inscription : juillet 2003 Messages : 672 ![]() |
Merci c'est assez clair. Je vais m'en occuper de suite
|
|
|
00
|
|
|
#6 |
|
Membre à l'essai
![]() Inscription : septembre 2002 Messages : 49 ![]() |
j'ajoute que l'outil ibexpert (gratuit) te fera ton generateur en 3 coup de clic
et tellement d'autre manip aussi, franchement IB sans IBexpert c'est comme aller à Dièpe sans voir la mer. bonne soirée julien |
|
|
00
|
|
|
#7 |
|
Membre habitué
![]() Inscription : juillet 2003 Messages : 672 ![]() |
Je n'ai que 12 tables et elles disposent toute d'un générateur grâce au forum.
Il n'empâche que je vais regarder d'un peu plus près l'outil ibexpert Merci à tous |
|
|
00
|
|
|
#8 | |
|
Membre éclairé
![]() Développeur informatique Inscription : octobre 2006 Messages : 435 ![]() |
Citation:
Ceci dit, votre méthode est potentiellement créatrice de conflits, le mieux est bien de créer pour chaque table un champ auto-incrémenté.
__________________
Si vous êtes libre, choisissez le Logiciel Libre. |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com