Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL 테이블 열에 NULL 값 허용 설정 후 NULL 값 삽입하는 방법

MySQL에서 특정 열에 NULL 값을 저장하려면, 테이블을 생성할 때 해당 열의 데이터 타입 뒤에 NULL 키워드를 명시해야 합니다. 기본 문법은 다음과 같습니다.

yourColumnName dataType NULL;

1. NULL 허용 열이 있는 테이블 생성

먼저 FirstName 열에 NULL 값을 허용하는 테이블을 생성해 보겠습니다.

mysql> create table DemoTable759 (
    Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    FirstName varchar(100) NULL
);
Query OK, 0 rows affected (0.72 sec)

위 예제에서 Id 열은 기본 키로 NOT NULL 제약 조건이 적용되어 있고, FirstName 열은 NULL 키워드를 통해 NULL 값을 허용하도록 설정되었습니다.

2. NULL 값 포함 레코드 삽입

INSERT 명령을 사용하여 일반 값과 NULL 값을 번갈아 삽입합니다.

mysql> insert into DemoTable759(FirstName) values('John');
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable759(FirstName) values(NULL);
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable759(FirstName) values('Carol');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable759(FirstName) values(NULL);
Query OK, 1 row affected (0.12 sec)

NULL을 삽입할 때는 작은따옴표 없이 그대로 NULL 키워드를 사용해야 합니다. 문자열 'NULL'로 입력하면 실제 NULL 값이 아닌 문자열이 저장되므로 주의가 필요합니다.

3. 결과 확인

SELECT 문으로 테이블의 모든 레코드를 조회합니다.

mysql> select *from DemoTable759;

실행 결과는 다음과 같으며, FirstName 열에 NULL 값이 정상적으로 저장된 것을 확인할 수 있습니다.

+----+-----------+
| Id | FirstName |
+----+-----------+
|  1 | John      |
|  2 | NULL      |
|  3 | Carol     |
|  4 | NULL      |
+----+-----------+
4 rows in set (0.00 sec)

이처럼 열 정의 시 NULL 키워드를 지정하면 해당 열에 값이 없는 상태를 의미하는 NULL을 자유롭게 저장할 수 있습니다. 반대로 NULL 입력을 막고 싶다면 NOT NULL 제약 조건을 사용하면 됩니다.