답변
예. IDENTITY
열을 기본 키로 만들 필요는 없습니다.
CREATE TABLE T
(
X INT PRIMARY KEY,
Y INT IDENTITY(1,1)
)
언제 이것이 유용 할지는 모르겠지만. 당신이 PK로 사용하고자하는 자연스러운 키를 가지고 있다면 어쨌든 대용 대체 키에 고유 한 제약 조건을두기를 원할 것입니다.
FK 관계 설정을 위해 SQL Server는 열이 PK인지 여부에 상관없이 고유 인덱스가 필요합니다.
레코드가 테이블에 추가 된 순서를 쉽게 기억할 수 있습니다. –
@ 래리 - 아 물론. 생각하지 않았어. –
@Larry, CreatedDate는 기본값 (getdate())을 사용하므로 훨씬 더 의미가 있습니다. –
IDENTITY 키워드로 열을 선언하고 단순히 PRIMARY KEY 제약 조건을 만들지 마십시오.
- 1. SQL Server가 기존 테이블에 기본 증가 키를 추가합니다.
- 2. GridView의 기본 키가없는 테이블에 대한 SQL UpdateCommand
- 3. MySQL LOAD DATA INFILE - 기본 키가없는 파일로드
- 4. 기본 키가없는 다수 Many
- 5. 기본 키가없는 Linq 삽입
- 6. SQL Server가 올바른 인덱스 사용법입니까?
- 7. Subsonic 기본 키가없는 테이블 생성
- 8. SQL Server 데이터베이스의 기본 키 자동 증가
- 9. SQL Server에서 자동 증가 기본 키의 상한
- 10. 기본 키가없는 링크 테이블에 대한 레일스 라우팅?
- 11. SQL Server가 잠겨 있습니까?
- 12. SQL Server가 레코드를 삭제하지 않습니다.
- 13. Solr SQL Server가 설치된 DataImportHandler
- 14. SQL 외래 키가없는 계단식 삭제?
- 15. 기본 키가없는 트랜잭션 복제 (고유 인덱스)
- 16. SQL 서버 여러 행을 삽입하고 int 열을 증가 시키십시오.
- 17. DB에 의해 생성 된 기본 키가없는 Hibernate?
- 18. SqlAdaptor.update 자동 증가 기본 키 열을 사용하는 SQLserver DB 테이블의 데이터 집합
- 19. SQL 삽입시 고유하지 않은 필드 증가 증가
- 20. SQL Server가 없거나 액세스가 거부되었습니다.
- 21. SQL Server가 다른 SQL 서버에 연결하고 있습니까?
- 22. 기본 키가없는 테이블의 각 레코드를 변경 하시겠습니까?
- 23. NHibernate가 기본 키가없는 테이블을 만드는 이유는 무엇입니까?
- 24. C# : 기본 키가없는 데이터 집합 업데이트
- 25. Zend를 사용하여 기본 키가없는 테이블에 삽입
- 26. 기본 키가없는 MySQL 데이터베이스의 데이터 편집
- 27. 기본 키가없는 조인 테이블에서 엔티티를 만드는 방법
- 28. 기본 키 병합 충돌을 자동으로 해결
- 29. 자동 증가 시퀀스 pl-sql
- 30. 자동 증가 열을 다시 0으로 재설정
확실히 - 열은 단지 'INT IDENTITY' (또는 BIGINT)로 선언되어야합니다. 그게 전부입니다. 기본 키가 될 필요가 없습니다. 전혀 없습니다 ... –
당신을 제약하지 않으려 고 노력하고 있습니까? –
@adrian : ... 프로덕션 시스템에서만 사용하십시오! :-) –