sql - 您能否在 SQL Server 表中定义一个新列,为新行自动生成唯一标识符?

标签 sql sql-server tsql sql-server-2012

SQL Server 中的自动增量列会自动填充;是否可以在不使用触发器的情况下定义一个 UniqueIdentifier 列以在插入时自动生成?

这将是表上的辅助唯一键。我需要创建它,因为我们现在需要一个可以在查询字符串中使用的公共(public)主键。

遗留基础设施仍然依赖于旧的 int 主键。鉴于旧的基础设施首先创建记录,我希望 SQL Server 在插入时透明地创建辅助 GUID 键 - 如果可能的话。

非常感谢

最佳答案

您可以使用具有唯一标识符类型的列,默认值为 NEWID()

关于sql - 您能否在 SQL Server 表中定义一个新列,为新行自动生成唯一标识符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11576632/

相关文章:

mysql - 如何在 MySQL 的 View 中创建临时表

mysql - 从 MSSQL 转换为 MySQL

sql - SELECT 语句 - NOLOCK 和 SET TRANSACTION ISOLATION LEVEL READ COMMITTED

sql - 检查名称是否包含多个标题

sql - 死锁——这真的有帮助吗?

sql - 两个查询返回不同的数据

mysql - 数据库模式困惑(索引和约束)

sql-server - 使用 BULK INSERT 的 SQL

c# - LINQ to SQL - 多个左连接、分组依据、同一张表上的左连接、计数

javascript - 为什么我的谷歌地图 Lat/Lng 变量不存储任何内容?