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

MySQL에 JSON 데이터 삽입하는 방법 완벽 가이드

MySQL에서 JSON 데이터 타입 활용하기

MySQL에서는 JSON 데이터 타입을 사용하여 테이블 컬럼을 정의한 후, JSON 형식의 데이터를 손쉽게 저장할 수 있습니다. 이 글에서는 JSON 데이터를 MySQL 테이블에 생성하고 삽입하고 조회하는 전체 과정을 단계별로 살펴보겠습니다.

1단계: JSON 타입 컬럼을 가진 테이블 생성

먼저 JSON 데이터 타입의 컬럼을 포함하는 테이블을 생성합니다.

mysql> create table DemoTable1876
    (
    EmployeeInformation JSON
    );
Query OK, 0 rows affected (0.00 sec)

위 예제에서 EmployeeInformation 컬럼은 JSON 타입으로 선언되어 있으므로, 구조화된 JSON 문서를 그대로 저장할 수 있습니다.

2단계: INSERT 명령으로 JSON 데이터 삽입

이제 insert 명령을 사용하여 테이블에 레코드를 삽입합니다. JSON 문자열 전체를 값으로 전달하면 됩니다.

mysql> insert into DemoTable1876 values('{
    "EmployeeData":{
    "Name": "Chris",
    "Age": 27
    }
    }'
    );
Query OK, 1 row affected (0.00 sec)

mysql> insert into DemoTable1876 values('{
    "EmployeeData":{
    "Name": "David",
    "Age": 24
    }
    }'
    );
Query OK, 1 row affected (0.00 sec)

각 레코드는 직원 정보를 담고 있는 중첩된 JSON 객체로 구성되어 있습니다. 이름(Name)과 나이(Age)가 EmployeeData라는 하위 객체 안에 포함된 구조입니다.

3단계: SELECT 문으로 저장된 데이터 확인

select 문을 사용하여 테이블의 모든 레코드를 조회해 보겠습니다.

mysql> select * from DemoTable1876;

위 쿼리를 실행하면 다음과 같은 결과가 출력됩니다.

+------------------------------------------------+
| EmployeeInformation                            |
+------------------------------------------------+
| {"EmployeeData": {"Age": 27, "Name": "Chris"}} |
| {"EmployeeData": {"Age": 24, "Name": "David"}} |
+------------------------------------------------+
2 rows in set (0.00 sec)

참고 사항

MySQL의 JSON 데이터 타입을 사용하면 다음과 같은 장점이 있습니다.

  • 데이터 유효성 검증: 잘못된 형식의 JSON 문자열이 삽입되면 오류가 발생하여 데이터 무결성이 보장됩니다.
  • 효율적인 저장: 내부적으로 이진(binary) 형식으로 저장되어 일반 TEXT 컬럼보다 빠르게 읽고 처리할 수 있습니다.
  • JSON 함수 지원: JSON_EXTRACT(), JSON_SET() 등 다양한 내장 함수를 사용해 저장된 문서의 특정 필드를 조회하거나 수정할 수 있습니다.

이처럼 JSON 데이터 타입을 활용하면 스키마가 유연해야 하는 데이터를 관계형 데이터베이스에서도 편리하게 관리할 수 있습니다.