-
BIGINT et generators
Bonjour,
Je suis nouveau dans la base de donnée FireBird et le type BIGINT reste un mystère. En effet, je compte utiliser ce type pour mes champs servant d'ID dans certaines tables. Comme ce sont des autoincrement ID, il y a un trigger qui va chercher la valeur d'un GENERATOR + 1 à chaque fois.
Reste que d'après ce que j'ai lu, les GENERATOR sont des INT64 et BIGINT est un NUMERIC (18) donc, à partir d'un moment, je vais avoir des erreurs.
Mon but est d'utiliser les ID de 0 à 2^64 donc, unsigned ...
Quel type dois-je donner à mon champ de table ? Y a -t-il un moyen de spécifier quelque part le fait que BIGINT est unsigned ?
Merci d'avance, toutes les réponses sont les bienvenue ...
Bruno
-
les générateurs sont des BIGINT
je ne vois pas bien ce qui t'inquiètes
le maximum est 2^63 -1
ce qui laisse de la marge non ?
en gros même à raison de 100 appels au générateur par seconde, tu en as pour un peu plus de 2924712086 ans pour atteindre la limite
(2^63 -1)/(100*3600*24*365)
-
Ok
Je pensais que BIGINT était signé ... Et du coup, que je perdais la 1/2 des valeurs puisque les négatifs ne m'intéressaient pas !
Ok, merci bcp, je suis rassuré ;-)
Bonne journée
Bruno
-
oui BIGINT est signé et va de -2^63 à 2^63 -1