Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 如何为主键创建特定样式的随机键_Sql Server - Fatal编程技术网

Sql server 如何为主键创建特定样式的随机键

Sql server 如何为主键创建特定样式的随机键,sql-server,Sql Server,我需要在一个表中插入一行,该表有一个遵循特定样式的主键。一个例子是: C140E30C-7BED-45C1-B514-AFB184C415D0 键是字母和数字的混合体,值在键中用“-”分隔。如何创建遵循此样式的主键?尝试以下操作: CREATE TABLE sometable ( id UNIQUEIDENTIFIER, colname INT ) INSERT INTO sometable (id, colname) SELECT NEWID(), 'test'

我需要在一个表中插入一行,该表有一个遵循特定样式的主键。一个例子是:

C140E30C-7BED-45C1-B514-AFB184C415D0
键是字母和数字的混合体,值在键中用“-”分隔。如何创建遵循此样式的主键?

尝试以下操作:

CREATE TABLE sometable
(
    id UNIQUEIDENTIFIER,
    colname INT
)

INSERT INTO sometable (id, colname)
    SELECT NEWID(), 'test'

这是一个GUID。使用函数Newid()。如果希望SQL Server自动分配值,请在PK列上创建一个默认值为
NEWSEQIENTIALID()
的默认约束。您真正需要的随机值是多少?GUID是相当糟糕的PK,NewSeqientilid不是那么随机,但使GUID不那么糟糕。