SQLite 설치 및 테스트 데이터를 생성
SQLite 설치 및 테스트 데이터를 생성
SQLite 설치 및 테스트 데이터를 생성하는 방법
SQLite는 간단하게 SQL을 배우고 테스트할 수 있는 강력한 데이터베이스 관리 시스템입니다. 이 글에서는 SQLite를 설치하고, 주어진 데이터를 테스트 테이블에 삽입하는 방법을 설명합니다.
1. SQLite 설치
SQLite는 설치가 매우 간단합니다. 운영 체제에 맞는 방법을 따라 주세요.
- Windows: - SQLite 다운로드 페이지에서 Precompiled Binaries for Windows의 sqlite-toolsZIP 파일을 다운로드합니다.
- ZIP 파일을 압축 해제한 후, sqlite3.exe파일을 원하는 폴더에 저장합니다.
- 명령 프롬프트(cmd)를 열고 SQLite가 있는 폴더로 이동하여 sqlite3명령어를 실행합니다.
 
- SQLite 다운로드 페이지에서 Precompiled Binaries for Windows의 
- macOS: SQLite는 기본적으로 macOS에 설치되어 있습니다. 터미널에서 아래 명령어로 확인하세요: - sqlite3 --version- 설치되지 않았다면, Homebrew를 통해 설치할 수 있습니다: - brew install sqlite
- Linux: 대부분의 배포판에 SQLite가 포함되어 있습니다. 설치되지 않았다면 다음 명령어로 설치하세요: - sudo apt update sudo apt install sqlite3
2. SQLite CLI 실행
SQLite를 실행하려면 터미널 또는 명령 프롬프트에서 아래 명령어를 입력합니다:
sqlite3그러면 sqlite> 프롬프트가 나타나며 SQLite 환경에 접속됩니다.
3. 테스트 데이터베이스 생성
SQLite에서 새로운 데이터베이스를 생성하려면 아래 명령어를 사용합니다:
sqlite3 test.db위 명령어는 test.db라는 이름의 데이터베이스 파일을 생성하고, 해당 파일에 접속합니다.
4. 테이블 생성
다음 SQL 명령어를 사용하여 직원 정보를 저장할 Employees 테이블을 생성합니다:
CREATE TABLE Employees (
    employee_id INTEGER PRIMARY KEY AUTOINCREMENT,
    name TEXT NOT NULL,
    department TEXT NOT NULL,
    salary REAL NOT NULL
);SQLite에서는 .tables 명령어를 사용하여 데이터베이스 내의 모든 테이블 목록을 확인할 수 있습니다
sqlite> .tables
Employees명령을 통해서 Emaployees 테이블이 생성된 것을 확인할 수 있습니다. 테이블이 생성한 명령의 각 부분에 대한 설명을 하나씩 풀어보겠습니다.
1. CREATE TABLE Employees
- CREATE TABLE: 새로운 테이블을 생성하는 명령어입니다.
- Employees: 생성할 테이블의 이름입니다. 이 테이블은 직원들의 정보를 저장하는 용도로 사용됩니다.
2. employee_id INTEGER PRIMARY KEY AUTOINCREMENT
- employee_id: 이 열의 이름은- employee_id입니다. 이 열은 각 직원의 고유한 식별자(ID)를 저장합니다.
- INTEGER: 이 열은 정수 타입의 데이터를 저장합니다.
- PRIMARY KEY: 이 열은 테이블에서 각 행을 고유하게 식별하는 키 역할을 합니다.- PRIMARY KEY는 각- employee_id값이 고유하다는 것을 보장하며, 이 열의 값은 중복될 수 없습니다.
- AUTOINCREMENT:- AUTOINCREMENT속성은 이 열의 값을 자동으로 증가시켜 새로운 행을 추가할 때마다 고유한 값을 자동으로 할당합니다. 예를 들어, 첫 번째 직원은- 1, 두 번째 직원은- 2와 같이 값이 자동으로 증가합니다.
3. name TEXT NOT NULL
- name: 이 열은 직원의 이름을 저장합니다.
- TEXT: 이 열은 문자열 데이터를 저장합니다.
- NOT NULL: 이 제약 조건은 이 열에- NULL값을 저장할 수 없다는 의미입니다. 즉, 모든 직원 데이터에는 반드시 이름이 있어야 합니다.
4. department TEXT NOT NULL
- department: 이 열은 직원의 부서 정보를 저장합니다.
- TEXT: 이 열은 문자열 데이터를 저장합니다.
- NOT NULL: 이 제약 조건은 이 열에- NULL값을 저장할 수 없다는 의미입니다. 즉, 직원은 반드시 부서 정보가 있어야 합니다.
5. salary REAL NOT NULL
- salary: 이 열은 직원의 급여를 저장합니다.
- REAL: 이 열은 실수형 데이터를 저장하며, 급여처럼 소수점을 포함하는 숫자 값을 저장할 때 사용됩니다.
- NOT NULL: 이 제약 조건은 급여 값이 반드시 존재해야 하며- NULL값이 될 수 없음을 의미합니다.
전체 설명
이 SQL 명령은 Employees라는 테이블을 생성하는 데 사용되며, 다음과 같은 데이터를 저장할 수 있는 테이블 구조를 만듭니다: - employee_id: 직원의 고유 ID (자동 증가) - name: 직원의 이름 (비어 있을 수 없음) - department: 직원의 부서 (비어 있을 수 없음) - salary: 직원의 급여 (비어 있을 수 없음)
이 테이블은 직원 정보 관리에 필요한 기본적인 구조를 제공하며, employee_id는 각 직원이 고유하게 식별될 수 있도록 돕습니다.
5. 테스트 데이터 삽입
주어진 데이터를 테이블에 삽입합니다:
INSERT INTO Employees (employee_id, name, department, salary) VALUES
(1, 'Alice', 'HR', 50000),
(2, 'Bob', 'IT', 60000),
(3, 'Charlie', 'IT', 55000),
(4, 'Diana', 'Sales', 45000);데이터가 잘 삽입되었는지 확인하려면 다음 명령어를 실행해 보세요:
SELECT * FROM Employees;결과
sqlite> SELECT * FROM Employees;
1|Alice|HR|50000.0
2|Bob|IT|60000.0
3|Charlie|IT|55000.0
4|Diana|Sales|45000.06. CSV 파일로 테스트 데이터 불러오기
CSV 파일을 사용해 데이터를 불러오는 방법도 매우 유용합니다. 예를 들어, 아래와 같은 CSV 파일 employee_data.csv를 준비했다고 가정해봅시다:
employee_id,name,department,salary
1,Alice,HR,50000
2,Bob,IT,60000
3,Charlie,IT,55000
4,Diana,Sales,45000CSV 파일을 SQLite 테이블에 불러오기 위해서는 다음 명령어를 실행합니다:
.mode csv
.import employee_data.csv Employees7. SQL 실습
이제 삽입된 데이터를 바탕으로 다양한 SQL 명령을 실행해볼 수 있습니다. 예를 들어: - 부서별 직원 조회: sql   SELECT * FROM Employees WHERE department = 'IT'; 결과 sql   sqlite> SELECT * FROM Employees WHERE department = 'IT';   2|Bob|IT|60000.0   3|Charlie|IT|55000.0
- 급여가 50000 이상인 직원 조회: - SELECT * FROM Employees WHERE salary >= 50000;- 결과 - sqlite> SELECT * FROM Employees WHERE salary >= 50000; 1|Alice|HR|50000.0 2|Bob|IT|60000.0 3|Charlie|IT|55000.0
- 급여 순으로 직원 정렬: - SELECT * FROM Employees ORDER BY salary DESC;- 결과 - sqlite> SELECT * FROM Employees ORDER BY salary DESC; 2|Bob|IT|60000.0 3|Charlie|IT|55000.0 1|Alice|HR|50000.0 4|Diana|Sales|45000.0
8. SQLite 세션 종료
작업을 마친 후, SQLite 셸을 종료하려면 아래 명령어를 입력하세요:
.exit카테고리 다른 글
| Date | Title | Author | 
|---|---|---|
| Dec 9, 2024 | SQL의 WHERE 절, 조건부 조회 | |
| Dec 8, 2024 | SQL 기본 SELECT 문법 이해하기 | |
| Dec 1, 2024 | SQL에서 VIEW를 이용해 테이블을 안전하게 검색하기 | |
| Sep 21, 2024 | WSL에서 docker-compose 사용하기 | |
| Aug 28, 2024 | SQLite 데이터베이스 생성하기 | |
| Aug 27, 2024 | 액셀 데이터를 SQL로 저장하기 | |
| Jan 5, 2024 | SQL 정렬 명령 order by | |
| Dec 6, 2023 | MySQL 도커로 설치하고 테스트 DB 사용하기 |