SQL Server 데이터베이스에 auto_increment 기본 키를 어떻게 추가합니까?
현재 기본 키가없는 테이블이 설정되어 있습니다. 내가해야 할 일은 primary key, no null, auto_increment
.
저는 Microsoft SQL Server
데이터베이스로 작업하고 있습니다. 단일 명령으로는 수행 할 수 없지만 시도하는 모든 명령은 구문 오류를 계속 반환한다는 것을 이해합니다.
편집하다 ---------------
기본 키를 만들고 null이 아닌 것으로 설정했습니다. 그러나 auto_increment
.
난 노력 했어:
ALTER TABLE tableName MODIFY id NVARCHAR(20) auto_increment
ALTER TABLE tableName ALTER COLUMN id NVARCHAR(20) auto_increment
ALTER TABLE tableName MODIFY id NVARCHAR(20) auto_increment
ALTER TABLE tableName ALTER COLUMN id NVARCHAR(20) auto_increment
int로 NVARCHAR
설정하지 않기 때문에 사용 하고 있습니다.NOT NULL
단일 명령으로 수행 할 수 있습니다. "자동 번호"에 대한 IDENTITY 속성을 설정해야합니다.
ALTER TABLE MyTable ADD mytableID int NOT NULL IDENTITY (1,1) PRIMARY KEY
보다 정확하게는 명명 된 테이블 수준 제약 조건을 설정하려면 :
ALTER TABLE MyTable
ADD MytableID int NOT NULL IDENTITY (1,1),
CONSTRAINT PK_MyTable PRIMARY KEY CLUSTERED (MyTableID)
MSDN에서 ALTER TABLE 및 IDENTITY 를 참조하십시오.
테이블에 이미 데이터가 포함되어 있고 열 중 하나를 ID로 변경하려는 경우 :
먼저 동일한 열이있는 새 테이블을 만들고 기본 키 열을 지정합니다.
create table TempTable
(
Id int not null identity(1, 1) primary key
--, Other columns...
)
그런 다음 표준 insert
문을 사용하여 원본 테이블의 모든 행을 새 테이블로 복사합니다 .
그런 다음 원래 테이블을 삭제하십시오.
마지막으로 TempTable
다음을 사용하여 원하는 이름으로 이름 을 바꿉니다 sp_rename
.
http://msdn.microsoft.com/en-us/library/ms188351.aspx
SQL Server Management Studio를 통해이 작업을 수행 할 수도 있습니다.
선택한 테이블을 마우스 오른쪽 버튼으로 클릭-> 수정
PK로 설정하려는 필드를 마우스 오른쪽 버튼으로 클릭-> 기본 키 설정
열 속성에서 "ID 사양"을 예로 설정 한 다음 시작 값과 증분 값을 지정합니다.
그런 다음 나중에 이런 종류의 스크립트를 작성하려면 방금 수정 한 테이블을 마우스 오른쪽 버튼으로 클릭하고
"SCRIPT TABLE AS"-> CREATE TO
이 작업을 수행하기위한 올바른 구문을 직접 확인할 수 있습니다.
칼럼이 있다면 매우 쉽습니다.
디자이너를 사용하여 열을 ID (1,1)로 설정할 수 있습니다. 테이블을 마우스 오른쪽 버튼으로 클릭 → 디자인 → 부분 왼쪽 (오른쪽 클릭) → 속성 → ID 열에서 #column을 선택합니다.
속성 :
ID 열 :
SQL Server 2008에서 :
- 테이블을 마우스 오른쪽 버튼으로 클릭
- 디자인으로 이동
- 숫자 데이터 유형 선택
- 새 열에 이름 추가
- ID 사양을 '예'로 설정
당신은 이것을 시도 할 수 있습니다 ... ALTER TABLE Your_Table ADD table_ID int NOT NULL PRIMARY KEY auto_increment;
'IT TIP' 카테고리의 다른 글
AngularJS에서 $ broadcast (), $ emit () 및 $ on () 사용 (0) | 2021.01.05 |
---|---|
입력 유형 = Firefox에서 텍스트 세로 정렬 제출 (0) | 2021.01.05 |
모바일 Safari 용 "홈 화면"아이콘 이름 설정 (0) | 2020.12.31 |
menuitem의 actionlayout은 아무것도하지 않습니다. (0) | 2020.12.31 |
Flutter에서 열에 ListView를 추가하는 방법은 무엇입니까? (0) | 2020.12.31 |