bonjour

nos clients peuvent avoir plusieurs sites et donc plusieurs bases
nos bases ont actuellement des clés primaires bigint identity
nous cherchons à avoir un identifiant unique par site le tout sur une seule colonne

on a donc penser à coder le numéro de site dans le bigint, genre en additionnant un autoincrément avec le numéro de site * 10 000 000 000
ce qui donnerait par exemple 10 000 000 1 => clé 1 sur site 1


comment générer ce genre de clé
j'avais pensé à une table qui donne le numéro actuel le plus haut pour chaque table
et une fonction en valeur par défaut du champ qui donne ce numéro +1 et qui l'incrémente dans la table
(est-ce fiable étant donné qu'sql server est multithreadé ?)

sql server refuse que je le fasse, restriction sur ce que peut faire une fonction à priori ...


des idées ?


merci