SQLite 데이터베이스의 부울 데이터 유형

Vaibhav Vaibhav 2023년6월21일
SQLite 데이터베이스의 부울 데이터 유형

SQLite 데이터베이스는 C 프로그래밍 언어로 작성된 임베디드 파일 기반 관계형 데이터베이스 관리 시스템(RDBMS)입니다. 바로 사용할 수 있는 라이브러리 형태로 제공됩니다.

파일 기반 데이터베이스는 모든 데이터베이스와 테이블을 저장하는 단일 파일을 생성합니다.

SQLite는 경량 데이터베이스이기 때문에 PostgreSQL, MySQL 등과 같은 피어에 비해 여러 가지 제한 사항이 있습니다. 예를 들어 SQLite는 효율적인 액세스를 제공하지 않고, 확장성이 부족하고, 다중 사용자 기능이 없으며, 데이터베이스 크기 제약, 거대한 테이블의 느린 처리, 최소한의 보안, 저장 프로시저 없음, 기본 데이터 유형 등이 있습니다.

SQLite는 또한 기본 데이터 유형인 Boolean을 놓치고 있습니다. 이 기사에서는 기존 데이터 유형을 사용하여 부울 데이터 유형을 구현하는 방법을 설명합니다.

SQLite 데이터베이스의 부울 데이터 유형

SQLite 데이터베이스는 부울 데이터 유형을 지원하지 않습니다. 그러나 SQLite 데이터베이스에서 부울 값을 나타내는 두 가지 방법을 사용할 수 있습니다.

부울 데이터 유형을 정수로 표현

부울 필드는 truefalse의 두 값만 가질 수 있습니다. 정수를 사용하여 true1로, false0으로 나타낼 수 있습니다.

이것은 문자열을 처리하는 데 시간이 오래 걸리고 저장 공간을 더 많이 차지하기 때문에 문자열을 사용하는 것보다 부울을 나타내는 더 나은 접근 방식입니다. 부울 필드는 01의 두 값이 필요하기 때문에 단일 비트를 사용해도 표현할 수 있습니다.

예제는 다음 SQL 스크립트를 참조하십시오.

-- creating a table
CREATE TABLE students (
    id INT NOT NULL,
    name VARCHAR(100) NOT NULL,
    age INT NOT NULL,
    international_student INT NOT NULL
);

-- inserting some data into the old table
INSERT INTO students VALUES (1, "Stefan", 13, 1);
INSERT INTO students VALUES (2, "Damon", 14, 0);
INSERT INTO students VALUES (3, "Elena", 12, 1);
INSERT INTO students VALUES (4, "Caroline", 12, 1);
INSERT INTO students VALUES (5, "Bonnie", 13, 0);

-- printing table
SELECT "Students";
SELECT "--------";
SELECT * FROM students;

출력:

Students
--------
1|Stefan|13|1
2|Damon|14|0
3|Elena|12|1
4|Caroline|12|1
5|Bonnie|13|0

부울 데이터 유형을 문자열로 표현

문자열을 사용하여 true"true"로, false"false"로 나타낼 수 있습니다. 다른 표현 스타일은 T/F, TRUE/FALSETrue/False일 수 있습니다.

예제는 다음 SQL 스크립트를 참조하십시오.

-- creating a table
CREATE TABLE students (
    id INT NOT NULL,
    name VARCHAR(100) NOT NULL,
    age INT NOT NULL,
    international_student VARCHAR(5) NOT NULL
);

-- inserting some data into the old table
INSERT INTO students VALUES (1, "Stefan", 13, "true");
INSERT INTO students VALUES (2, "Damon", 14, "false");
INSERT INTO students VALUES (3, "Elena", 12, "true");
INSERT INTO students VALUES (4, "Caroline", 12, "true");
INSERT INTO students VALUES (5, "Bonnie", 13, "false");

-- printing table
SELECT "Students";
SELECT "--------";
SELECT * FROM students;

출력:

Students
--------
1|Stefan|13|true
2|Damon|14|false
3|Elena|12|true
4|Caroline|12|true
5|Bonnie|13|false
Vaibhav Vaibhav avatar Vaibhav Vaibhav avatar

Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.