SQLite를 처음 사용하려면 먼저 DB와 table을 만들어야 한다.
만들기 위해서는 sqlite exe 파일이 있어야 하는데,
이는 아래 링크의 SQLite 홈페이지에서 다운로드할 수 있다.
('sqlite'를 검색해도 나온다)
SQLite Home Page
SQLite is a C-language library that implements a small, fast, self-contained, high-reliability, full-featured, SQL database engine. SQLite is the most used database engine in the world. SQLite is built into all mobile phones and most computers and comes bu
www.sqlite.org
https://www.sqlite.org/index.html
여기에서 'Download'에 들어가
'Precompiled Binaries for Windows' 중 sqlite-tools.zip 파일을 다운로드한다.
이 파일의 압축을 풀어보면 총 3개의 exe 파일이 있다.
이 중 sqlite3.exe 파일만 있으면 된다.
이 파일을 DB 생성하려는 폴더로 옮긴 뒤, 실행해보면
아래와 같은 명령 프롬프트가 뜰 것이다.
명령 프롬프트에서 사용할 명령어는 아래와 같다.
.open DB명.db3 // DB파일 생성 또는 open. (없으면 생성, 이미 있으면 open)
CREATE TABLE 테이블명 ( // open한 DB파일 안에 TABLE 생성.
칼럼명1 데이터타입,
칼럼명2 데이터타입,
...
);
.schema 테이블명 // 생성된 TABLE의 정보 확인. (위의 CREATE 내용 출력)
INSERT INTO 테이블명 VALUES(칼럼값1, 칼럼값2, ...); // TABLE에 값들을 칼럼 순으로 저장.
SELECT 검색조건 FROM 테이블명; // TABLE에서 조건에 해당하는 값 출력.
여기에서 칼럼의 타입으로는
NULL, INTEGER, REAL, TEXT, BLOB가 사용될 수 있다.
Boolean 값은 INTEGER의 0(false)과 1(true)로 저장된다고 한다.
그리고 VARCHAR(정수)라는 타입이 있는데,
이는 입력한 정수만큼의 길이를 가지는 문자형이라는 의미이다.
아래는 예시 코드이다.
.open TestDB.db3
CREATE TABLE TestTABLE (
id INTEGER, // integer(소문자)도 가능.
name VARCHAR(20) NOT NULL, // varchar(20) not null도 가능.
phone VARCHAR(13)
);
INSERT INTO TestTABLE VALUES(0, 'ReRoot0', '010-0000-1111');
INSERT INTO TestTABLE VALUES(1, 'ReRoot1', '010-1111-0000');
SELECT * FROM TestTABLE; // *은 TABLE 내 모든 값 출력.
SELECT name FROM TestTABLE; // TABLE 내 모든 name값 출력.
여기에서 NOT NULL은 해당 칼럼의 값이 NULL이 될 수 없다는 것으로,
실제로 INSERT 해보면 phone 칼럼에는 NULL이 적용 가능 하지만,
name 칼럼에는 아래와 같은 Error가 발생한다.