[Database] 길이를 알 수 없는 배열 저장하기

Song-YunMin·2021년 3월 17일
1

DATABASE

목록 보기
3/8

길이를 알 수 없는 배열을 저장하려면

RDBMS에 길이를 알 수 없는 배열을 저장하려면 먼저 RDBMS의 데이터 타입에 대해 이해하여야 합니다. 먼저 RDBMS에서는 배열을 저장할 수 없는 데이터 타입을 지원하지 않는데, 배열을 저장할 수 있는 방법이 없는것은 아닙니다.

먼저 데이터 타입을 확인해 보도록 하겠습니다.

숫자형 데이터 타입

숫자형 데이터 타입은 정수 타입, 부동 소수점 타입, 고정 소수점 타입으로 구분합니다.

날짜형 데이터 타입

날짜형 데이터 타입은 여러가지가 있습니다. 날짜 및 시간, 연도 데이터를 삽입할 수 있습니다.

이진 데이터 타입

이진 데이터 타입은 데이터를 바이너리 파일 형태로 저장할 수 있는 데이터 타입 입니다.

지원하는 데이터 타입에 나와있듯이 '배열'을 저장할 수 있는 데이터 타입은 없습니다. 즉, 정상적으로는 배열을 삽입할 수가 없는 것인데, 자바스크립트에서는 아래와 같은 방식으로 동적 배열을 저장할 수 있습니다.

let array = [];

for(let i = 0 ; i < 10 ; i++){
    array.push(i);
}
console.log(array); // [0,1,2,3,4,5,6,7,8,9]

위에 선언된 동적 배열을 데이터 베이스에 저장하기 위해서는 문자열 및 이진 데이터로 변환하면 됩니다. 그러면 위에서 언급되어 있는 데이터 타입 중 문자 데이터 타입 및 이진 데이터 타입에 삽입할 수 있습니다.

let array = [];

for(let i = 0 ; i < 10 ; i++){
    array.push(i);
}
console.log(array); // [0,1,2,3,4,5,6,7,8,9]

let string = array.toString();
console.log(string); // "0,1,2,3,4,5,6,7,8,9"

데이터 베이스에서 꺼낸 후 다시 배열로 돌리려면 split 메서드를 이용하면 됩니다.

let array = [];

for(let i = 0 ; i < 10 ; i++){
    array.push(i);
}
console.log(array); // [0,1,2,3,4,5,6,7,8,9]

let string = array.toString();
console.log(string); // "0,1,2,3,4,5,6,7,8,9"

// DB 접근 및 데이터 조회

let change = string.split(',');
console.log(change); // ['0','1','2','3','4','5','6','7','8','9']

보다시피 위 예제는 정수로 이루어져있던 요소가 문자열이 된 만큼 다시 정수형으로 돌리는 과정이 필요합니다.

profile
고독한 서버 개발 3년차

0개의 댓글