|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | |||||||
|
Expert Confirmé Sénior
![]() Développeur C++\Delphi Inscription : juillet 2006 Messages : 7 806 ![]() |
SQL AnyWhere 10
J'ai besoin d'une SEQUENCE, semble que cela n'existe pas en version 10. J'ai donc fait une fonction qui va me trouver le Premier Numéro disponible (il y a une volonté de recycler les numéros supprimés), c'est un peu différent d'une SEQUENCE, je l'avoue ! Code la fonction Code :
Code :
D'un point de vue performance, pas de soucis, la table restera très petite et des insertions très ponctuelles ! A savoir qu'un code similaire existe dans l'application que je maintiens mais coder directement en C++ Builder (il y a autant de fois le code dupliqué qu'il doit exister de Séquence, oui c'est vilain), je voudrais uniformiser et l'intégrer directement à la Base de données au départ mon but était de l'intégrer à un Trigger comme ceci Code :
Citation:
Puis-je quand même utiliser une fonction et du SQL dynamique ? Je n'ai pas bien compris comment récupérer le CURSOR d'un EXECUTE, j'ai trouvé un code Sybase V15 ou SQL Server 2008 qui ne fonctionne pas sous la version AnyWhere 10 !
__________________
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 Parisien ! Dites NON à la VO ST au Cinéma ! Soit VF Soit VO sans sous-titre |
|||||||
|
|
00
|
|
|
#2 |
![]() ![]() |
Question stupide, mais pourquoi rechercher une séquence lorsque l'autincrément existe ? Quel est le gain de combler les trous ? C'est pas un peu dangereux en terme d'intégrité ?
__________________
Sr DBA Oracle / Sybase / MS-SQL / DB2 / Informix / Postgresql Administrateur SAP Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums ! |
|
|
00
|
|
|
#3 |
|
Expert Confirmé Sénior
![]() Développeur C++\Delphi Inscription : juillet 2006 Messages : 7 806 ![]() |
Ne me pose pas la question, je reproduis le comportement actuel des 13 autres types d'objet qui utilise déjà ce système de numérotation recyclée !
Le Développement du produit doit avoir environ 10 ans, j'y suis depuis 8 mois, j'ajoute des fonctionnalités et je respecte les conventions existantes ! Moi je trouve cela assez moche, mais c'est vrai que pour l'utilisateur, semble que cela soit plus simple qu'il n'y ait pas de trou ! Pire, les jointures sont faites sur cette numérotation, et parfois sur le PK Auto Inc ! Il semble que mes prédécesseurs n'étaient pas des habitués de la DB ... mais plutôt de l'ASM sur 68000 ou du C sur ARM3, en ce moment ma collègue compte ses µv consommés en trop pour prolonger le temps de vie sur le mode crise sur batterie, on est loin du SQL ! Pour ma part, pour le nouveau 14eme type d'objet et le 13eme que j'ai réécrit, j'utilise uniquement la PK Auto Inc pour mes jointures, cette "séquence" n'est là qu'à titre informatif pour les utilisateurs habitués et quelques liens avec d'autres modules de l'appli qui ne savent causer qu'avec cette numérotation en séquence ! Je me suis fait une couche OR, je n'utilise que cette couche pour mes MAJ DB qui pour ces deux classes gèrent ce mode "DeviceNumberSequence" !
__________________
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 Parisien ! Dites NON à la VO ST au Cinéma ! Soit VF Soit VO sans sous-titre |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Yannick Ingénieur Etudes & Developpements Inscription : février 2006 Messages : 1 125 ![]() |
J'avais posté une réponse il y a quelques temps sur la recherche de rupture dans une séquence, cela pourra vous aider : ici
Bon courage
__________________
Dans la connaissance du monde, ceux qui ne savent rien en savent toujours autant que ceux qui n'en savent pas plus qu'eux. (Pierre Dac) |
|
|
00
|
|
|
#5 | ||
|
Expert Confirmé Sénior
![]() Développeur C++\Delphi Inscription : juillet 2006 Messages : 7 806 ![]() |
hum, Yanika_bzh, j'ai tenté aussi de faire un seul SQL, je n'avais pas pensé à un troisième alias !
Joli formulation ! Cela donnerait Code :
je demanderais à mon responsable, quelle requête est lui semble préférable !
__________________
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 Parisien ! Dites NON à la VO ST au Cinéma ! Soit VF Soit VO sans sous-titre |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com