집 >데이터 베이스 >MySQL 튜토리얼 >mysql에 기본 키를 추가하는 방법은 무엇입니까?
"PRIMARY KEY"의 전체 이름은 "기본 키 제약 조건"입니다. MySQL 기본 키 제약 조건은 테이블의 각 행을 고유하게 식별하는 값을 갖는 열 또는 열의 조합입니다. 이러한 열을 테이블의 기본 키라고 하며, 이를 통해 테이블의 엔터티 무결성이 적용됩니다. 그렇다면 MySQL에 기본 키 제약 조건을 추가하는 방법은 무엇입니까? 다음 기사에서는 이를 소개합니다.
기본 키 제약 조건은 테이블의 기본 키를 정의하여 테이블에 있는 각 데이터 행의 식별자를 고유하게 결정합니다. 기본 키는 테이블의 특정 열일 수도 있고 여러 열로 구성된 기본 키를 복합 기본 키라고 합니다. 기본 키는 다음 규칙을 준수해야 합니다.
● 각 테이블은 하나의 기본 키만 정의할 수 있습니다.
● 기본 키 값은 테이블의 각 행을 고유하게 식별해야 하며 NULL일 수 없습니다. 즉, 테이블에 동일한 기본 키 값을 가진 두 개의 데이터 행이 있을 수 없습니다. 이것이 유일성의 원리이다.
● 열 이름은 복합 기본 키 목록에 한 번만 나타날 수 있습니다.
● 복합 기본 키에는 불필요한 중복 열을 포함할 수 없습니다. 복합 기본 키의 열이 삭제된 경우에도 나머지 열로 구성된 기본 키가 여전히 고유성 원칙을 만족하면 복합 기본 키가 올바르지 않은 것입니다. 이것이 최소화의 원칙이다.
1. 테이블 생성 시 기본 키 제약 조건을 추가합니다.
CREATE TABLE 문에서 기본 키는 PRIMARY KEY 키워드를 지정합니다.
열을 정의할 때 기본 키를 지정합니다. 구문 규칙은 다음과 같습니다.
<字段名> <数据类型> PRIMARY KEY [默认值]
예: test_db 데이터베이스에 tb_emp 1 데이터 테이블과 해당 기본 키를 만듭니다. is id
mysql> CREATE TABLE tb_emp1 -> ( -> id INT(11) PRIMARY KEY, -> name VARCHAR(25), -> deptId INT(11), -> salary FLOAT -> ); Query OK, 0 rows affected (0.37 sec) mysql> DESC tb_emp1; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | id | int(11) | NO | PRI | NULL | | | name | varchar(25) | YES | | NULL | | | deptId | int(11) | YES | | NULL | | | salary | float | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 4 rows in set (0.14 sec)
모든 열을 정의한 후 기본 키를 지정하는 구문 형식은 다음과 같습니다.
[CONSTRAINT <约束名>] PRIMARY KEY [字段名]
예: test_db에 tb_emp 2 데이터 테이블을 생성합니다. 기본 키가 id#🎜🎜 #
mysql> CREATE TABLE tb_emp2 -> ( -> id INT(11), -> name VARCHAR(25), -> deptId INT(11), -> salary FLOAT, -> PRIMARY KEY(id) -> ); Query OK, 0 rows affected (0.37 sec) mysql> DESC tb_emp2; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | id | int(11) | NO | PRI | NULL | | | name | varchar(25) | YES | | NULL | | | deptId | int(11) | YES | | NULL | | | salary | float | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 4 rows in set (0.14 sec)
2인 데이터베이스. 테이블을 생성한 후 기본 키 제약 조건을 추가합니다.
테이블을 생성한 후 추가할 수 있습니다. 데이터 테이블 수정 시 기본 키 제약 조건은 다음과 같습니다. # 🎜🎜#ALTER TABLE <数据表名> ADD PRIMARY KEY(<列名>);
예: 데이터 테이블 tb_emp3을 수정하고 필드 ID를 기본 키로 설정
mysql> ALTER TABLE tb_emp3 -> ADD PRIMARY KEY(id); Query OK, 0 rows affected (0.94 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> DESC tb_emp3; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | id | int(11) | NO | PRI | NULL | | | name | varchar(30) | YES | | NULL | | | deptId | int(11) | YES | | NULL | | | salary | float | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 4 rows in set (0.12 sec)
#🎜 🎜#3. 복합 기본 키 설정
#🎜🎜 #이때 기본 키는 여러 필드로 구성됩니다. PRIMARY KEY [字段1,字段2,…,字段n]
예: 테이블에 기본 키 ID가 없다고 가정하고 고유성을 위해 데이터 테이블 tb_emp4를 생성합니다. 직원을 확인하려면 다음과 같이 name과 deptId를 결합하면 됩니다. 기본 키
mysql> CREATE TABLE tb_emp4 -> ( -> name VARCHAR(25), -> deptId INT(11), -> salary FLOAT, -> PRIMARY KEY(id,deptId) -> ); Query OK, 0 rows affected (0.37 sec) mysql> DESC tb_emp4; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | name | varchar(25) | NO | PRI | NULL | | | deptId | int(11) | NO | PRI | NULL | | | salary | float | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 3 rows in set (0.14 sec)
위 내용은 mysql에 기본 키를 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!