[DB] SQLite

gonzo·2020년 10월 10일
0

DataBase

목록 보기
1/2

🟥 Intro

SQLite : RDBMS의 데이터를 다루기 위해 사용하는 언어로 DML, DDL 두 종류를 사용한다.

  • DML(Data Manipulation Language) : 데이터의 추가, 삭제, 갱신, 조회 시에 사용.
    - 예시 : INSERT, DELETE, UPDATE, SELECT
  • DDL(Data Definition Language) : 데이터의 테이블 등을 생성, 변경, 제거할 때에 사용.
    - 예시 :CREATE,ALTER,DROP

RDBMS(Relational Database Management System)
: 데이터의 구성이 행(row)으로 구성된 테이블이며 각 행은 열(column)의 데이터로 이루어져 있다.

🟧 실행 방법

SQL 홈페이지에서 각자 컴퓨터 사양에 맞는 버전을 설치하자.
나는 Visual Studio Code 2019 버전을 사용하므로 이 프로그램에 맞추어 글을 쓰겠당. 터미널에서 sqlite3을 입력하면 sqlite가 실행된다.

# sqlite3 실행
$ sqlite3
# 종료
$ .quit

Visual Studio Code에서는 Sqlite3 확장 프로그램(Extensions)을 제공하므로 다운로드받으면 사용이 가능하다!

🟨 DB 생성 및 Table 생성/삭제

데이터의 생성 및 조회가 가능하다는 점에서 CRUD의 C, R과 유사하다.

① DB 생성

sqlite3 DB파일이름지정.sqlite3
sqlite> .databases
sqlite> .mode csv
sqlite> .import csv파일이름.csv tbl이름01
sqlite> .mode csv
sqlite> .import hellodb.csv exm01
sqlite> SELECT * FROM exm01 ;
1,"길동","홍",600,"충청도",010-2424-1232

CSV : Comma Seperated Value로 comma(,)로 값들이 구분된다는 뜻이다.

📍 추가 사항 : 출력 결과에 변화를 주자

출력 결과가 더 깔끔했으면 좋겠다! 한다면

sqlite> .headers on
sqlite> .mode column
sqlite> SELECT * FROM exm01 ;
id  first_name  last_name  age  country  phone
--  ----------  ---------  ---  -------  -------------
1   길동          홍          600  충청도      010-2424-1232

.headers on
.mode column

② Table 생성

sqlite> CREATE TABLE 테이블이름(
		데이터 내의 column 값들,
        구분은 comma로 한다,
        명령어 종료는 semicolon으로);
# 생성된 table 목록을 조회(전부 보여줌)
sqlite > .table

SQL문의 종료는 ;로 인식하므로 마지막에 ;가 없으면 종료되지 않는 것에 주의!

③ Table 삭제

sqlite > DROP TABLE 삭제할테이블이름 ;
sqlite> .tables
exm01  ppls
sqlite> DROP TABLE exm01 ;
sqlite> .tables
ppls
sqlite>

📍 추가사항 - Schema 조회

Schema / 스키마 : 데이터베이스의 구조와 제약 조건을 정의하는 것 - 형식 정의

sqlite> .schema 테이블이름

위의 코드를 쓰고 실행하면 해당 테이블의 데이터 구조 형태가 출력된다.

sqlite> CREATE TABLE ppls (
   ...> id INTEGER PRIMARY KEY,
   ...> name TEXT );
sqlite> .tables
exm01  ppls
sqlite> .schema ppls
CREATE TABLE ppls (
id INTEGER PRIMARY KEY,
name TEXT );

wikidocs-DB
wally-wally님의 github

profile
💬직업은 IT로 하겠습니다 근데 이제 건축을 곁들인...

0개의 댓글