Comment créer une colonne unique avec la valeur par défaut UUID

9

J'ai une colonne clé à usage interne qui est juste un entier croissant, mais je voudrais avoir une deuxième colonne unique qui est un UUID, mais je ne sais pas comment avoir une fonction appelée pour la valeur par défaut (de sorte que SQL Le serveur crée l'UUID et non java), y a-t-il une documentation que l'on pourrait me suggérer pour cela?

ztatic
la source

Réponses:

12
CREATE TABLE TblUID
(
    ID INT NOT NULL,
    UID UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID()
)
Alex_L
la source
5
Ça , ou NEWSEQUENTIALID().
Nick Chammas
6

Je ne sais pas si je comprends bien votre question, mais vous pouvez avoir un uniqueidentifierchamp dans votre table. Si vous souhaitez générer un UID pour un enregistrement, vous pouvez faire quelque chose comme ceci:

create table UniqueIdTest
(
    someint int not null,
    someid uniqueidentifier not null
)

insert into UniqueIdTest(someint, someid)
values(1, NEWID())

Cela répond-il à vos exigences?

Thomas Stringer
la source