如何在 SQL Server 中将标识列设置为创建的表

How to set identity column to created table in SQL server(如何在 SQL Server 中将标识列设置为创建的表)
本文介绍了如何在 SQL Server 中将标识列设置为创建的表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在 SQL Server 中这样创建了一个表:

I created a table in SQL Server like this:

CREATE TABLE [UserName]
(
   [ID] [int] NOT NULL ,
   [Name] [nvarchar] (50) NOT NULL ,
   [Address] [nvarchar] (200) NULL

   CONSTRAINT [PK_UserName] PRIMARY KEY CLUSTERED ([ID] ASC)
) ON [PRIMARY]
GO

如果我想让 ID 成为一个标识列,我需要什么?我是否需要删除并创建此表并将 ID 设置为 [ID] [int] IDENTITY(1,1) NOT NULL .

If I want to make ID an identity column, what do I need? Do I need to drop and create this table and set ID to [ID] [int] IDENTITY(1,1) NOT NULL .

使用 drop 和 create,UserName 表中的所有数据都会丢失.

By using drop and create, all of data from UserName table are lost .

还有其他方法可以将 IDENTITY COLUMN 设置为 created table 的列而不丢失数据吗?

Is there another way to set IDENTITY COLUMN to created table's column without losing data?

我使用 SQL Server 2008 R2 :)

I use SQL Server 2008 R2 :)

推荐答案

ALTER TABLE [UserName] DROP COLUMN [ID];

ALTER TABLE [UserName] 
    ADD [ID] integer identity not null;

这篇关于如何在 SQL Server 中将标识列设置为创建的表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Execute complex raw SQL query in EF6(在EF6中执行复杂的原始SQL查询)
SSIS: Model design issue causing duplications - can two fact tables be connected?(SSIS:模型设计问题导致重复-两个事实表可以连接吗?)
SQL Server Graph Database - shortest path using multiple edge types(SQL Server图形数据库-使用多种边类型的最短路径)
Invalid column name when using EF Core filtered includes(使用EF核心过滤包括时无效的列名)
How should make faster SQL Server filtering procedure with many parameters(如何让多参数的SQL Server过滤程序更快)
How can I generate an entity–relationship (ER) diagram of a database using Microsoft SQL Server Management Studio?(如何使用Microsoft SQL Server Management Studio生成数据库的实体关系(ER)图?)