MySQL에서 테이블을 수정할 때 기본 키 제약 조건을 추가하는 방법은 무엇입니까?

青灯夜游
풀어 주다: 2020-10-12 11:28:05
원래의
5085명이 탐색했습니다.

mysql에서는 테이블의 필드에 대한 기본 키 제약 조건을 설정하려는 경우 데이터 테이블을 수정할 때 "ALTER TABLE 테이블 이름 ADD PRIMARY KEY(필드 이름);" 문을 사용하여 기본 키 제약 조건을 추가할 수 있습니다. 테이블을 수정할 때 반드시 설정해야 합니다. 기본 키 제약 조건을 구성하는 필드의 값은 중복될 수 없으며 null이 아니어야 합니다.

MySQL에서 테이블을 수정할 때 기본 키 제약 조건을 추가하는 방법은 무엇입니까?

(추천 튜토리얼: mysql 비디오 튜토리얼)

기본 키(PRIMARY KEY)의 전체 이름은 MySQL에서 가장 자주 사용되는 제약 조건인 "기본 키 제약 조건"입니다. 일반적인 상황에서는 DBMS가 테이블에서 레코드를 더 빨리 찾을 수 있도록 테이블에 기본 키가 설정됩니다.

테이블 생성 시 기본 키 제약 조건 설정

CREATE TABLE 문에서 PRIMARY KEY 키워드를 통해 기본 키를 지정합니다.

필드 정의 시 기본 키를 지정하세요. 구문 형식은 다음과 같습니다.

<字段名> <数据类型> PRIMARY KEY [默认值]
로그인 후 복사

Example

test_db 데이터베이스에 tb_emp3 데이터 테이블을 생성합니다. 기본 키는 id입니다.

mysql> CREATE TABLE tb_emp3
    -> (
    -> id INT(11) PRIMARY KEY,
    -> name VARCHAR(25),
    -> deptId INT(11),
    -> salary FLOAT
    -> );
Query OK, 0 rows affected (0.37 sec)
mysql> DESC tb_emp3;
+--------+-------------+------+-----+---------+-------+
| 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)
로그인 후 복사

테이블 수정 시 기본 키 제약 조건 추가

기본 키 제약 조건은 테이블을 생성하는 동안 생성할 수 있을 뿐만 아니라 테이블을 수정할 때 추가할 수도 있습니다. 다만, 기본키 제약조건으로 설정된 필드에는 null 값이 허용되지 않는다는 점에 유의해야 한다.

데이터 테이블 수정 시 기본 키 제약 조건을 추가하는 구문 형식은 다음과 같습니다.

ALTER TABLE <数据表名> ADD PRIMARY KEY(<字段名>);
로그인 후 복사

일반적으로 테이블 수정 시 테이블의 필드에 기본 키 제약 조건을 설정하려는 경우 해당 값이 기본 키 제약 조건으로 설정된 필드에는 중복이 있을 수 있으며 비어 있지 않음이 보장되어야 합니다. 그렇지 않으면 기본 키 제약 조건을 설정할 수 없습니다.

Example

tb_emp2 데이터 테이블의 테이블 구조를 보면 SQL 문과 실행 결과는 다음과 같습니다.

mysql> DESC tb_emp2;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id     | int(11)     | NO   |     | NULL    |       |
| name   | varchar(30) | YES  |     | NULL    |       |
| deptId | int(11)     | YES  |     | NULL    |       |
| salary | float       | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
4 rows in set (0.14 sec)
로그인 후 복사

데이터 테이블 tb_emp2를 수정하고 필드 id를 기본 키로 설정합니다. SQL 문 및 실행 결과는 다음과 같습니다.

mysql> ALTER TABLE tb_emp2
    -> ADD PRIMARY KEY(id);
Query OK, 0 rows affected (0.94 sec)
Records: 0  Duplicates: 0  Warnings: 0
mysql> DESC tb_emp2;
+--------+-------------+------+-----+---------+-------+
| 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)
로그인 후 복사

위 내용은 MySQL에서 테이블을 수정할 때 기본 키 제약 조건을 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿