2014-11-20 3 views
0

내가 MySQL을 사용하고 있는데 나는 차이가이 사이에 무엇인지 궁금 :PRIMARY KEY와 CONSTRAINT PRIMARY KEY의 차이점은 무엇입니까?

CREATE TABLE Employees(
E_Id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, 
); 

과 :

CREATE TABLE EMPLOYEES(
E_Id INT NOT NULL AUTO_INCREMENT, 
CONSTRAINT pk_Employee PRIMARY KEY(E_Id)); 

은을 동일 있습니까?

+0

아니요, 그들은 같지 않습니다. 'ALTER TABLE'은 테이블을 변경하는데 사용되며,'CONSTRAINT'는 외부 제약 조건 (참조 무결성을 강화)을 컬럼에 추가하는 데 사용됩니다. –

+0

질문에'ALTER TABLE'이 어디에 있습니까? – Barmar

+0

나는 나의 질문을 편집했다. alter table은 필요하지 않았다 .... 나는 단지 CONSTRAINT가 나의 첫번째 예제와 비교되는 것을 궁금해하고있다. –

답변

1

기본 키 정의가 모두 같다고 생각합니다.

sqlfiddle을 참조하십시오. 쇼에서

및 출력이 Employes_1 싶게 _2 테이블을 만들 :

Employees_1 | 표 employees_1를 CREATE (E_Id INT (11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (E_Id)) ENGINE = 이노 DEFAULT CHARSET = 라틴

Employees_2을 | 테이블 이름 EmployeesEMPLOYEES 시스템 변수 lower_case_table_names 참조 같으면 TABLE employees_2 (E_Id INT (11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (E_Id)) 답변을 ENGINE = 이노 DEFAULT CHARSET = 라틴

을 만들.

+0

차이가 보이지 않습니다 .... –

+0

정확합니다. 다른 점이 없다. 그게 당신이 요구하는 것입니다 ... – Lars

+0

아, 당신이 말했기 때문에 : "내 생각에"나는 "같지 않다고 생각합니다." 잘못 읽었어야한다 ... 그들은 같은 생각이다 .... –

관련 문제