i have a primary key field -- but how do i update the field so that it is is an identity column that increments by one every time something is inserted

vbnetcoder
vbnetcoder used Ask the Experts™
on
i have a primary key field -- but how do i update the field so that it is is an identity column that increments by one every time something is inserted.

It is an existing table so i believe I have to use alter table but not sure of all the syntax
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Vitor MontalvãoIT Engineer
Distinguished Expert 2017

Commented:
You want to update an identity column? Be careful with updating a primary key column since it can affect the referential integrity. You'll need first to disable the constraint before updating the field.

Author

Commented:
This is a test database so not a huge deal
Senior DBA
Most Valuable Expert 2018
Top Expert 2014
Commented:
You can't directly change an existing column to an identity column yourself, but ...

If the table doesn't have too many rows, it's probably easiest to use SSMS.  Go into "Design" mode on the table, change that column to add the identity property, and save it.  SQL will create and run the necessary script to copy, recreate and reload the table with that column now an identity.
lcohanDatabase Analyst

Commented:
Assuming this would work you could change a column to identity only if its data type is int/bigint however I think the SSMS change will not work and it will generate an error when you will hit the save button.

Author

Commented:
ty

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial