Chapter 01 ~ 02 p. 80의 shop_db의 회원 테이블(member)에서 아이유 회원에 대한 정보만 추출한 후 결과 화면 인증하기
🖥️ 코드
select *
from member
where member_id = "iyou"
;
select *
from member
where member_name = "아이유"
;
🖥️ 결과
데이터베이스 개체 3가지 설명하기
데이터베이스 개체
- 인덱스 : 데이터 조회 시 결과 나오는 속도 획기적 개선(= 책 뒤 '찾아보기')
- 뷰 : 테이블의 일부를 제한적으로 표현(= '바로가기 아이콘')
- 스토어드 프로시저 : SQL에서 프로그래밍 가능하도록 해줌
그외
📖 데이터베이스(Database, DB)
- 데이터의 집합.
- 다양한 정보가 저장되고 관리되는 공간.
📖 DBMS(Database Management System)
- 데이터베이스를 관리하고 운영하는 소프트웨어.
- 특정 목적을 처리하기 위한 프로그램.
- 여러 명의 사용자, 응용 프로그램과 공유하고 동시 접근 가능해야 함.
DBMS | 제작사 | 작동 운영체제 | 최신 버전 (2023.3.19 기준) | 기타 |
---|---|---|---|---|
MySQL | Oracle | Unix, Linux, Windows, Mac | 8.0 | 오픈 소스(무료), 상용 |
MariaDB | MariaDB | Unix, Linux, Windows | 10.11.2 | 오픈 소스(무료), MySQL 초기 개발자들이 독립해 만듦 |
PostgreSQL | PostgreSQL | Unix, Linux, Windows, Mac | 15.2 | 오픈 소스(무료) |
Oracle | Oracle | Unix, Linux, Windows | 21c | 상용 시장 점유율 1위 |
SQL Server | Microsoft | Windows | 2022 | 주로 중/대형급 시장에서 사용 |
DB2 | IBM | Unix, Linux, Windows | 11.5.7 | 메인프레임 시장 점유율 1위 |
Access | Microsoft | Windows | 2021 | PC용 |
SQLite | SQLite | Android, iOS | 3.41.1 | 오픈 소스(무료), 모바일 전용 |
(표 내 볼드체 : 책과 다른 부분)
📖 DBMS(Database Management System)
- 데이터베이스(데이터 집합) 관리 & 운영 위한 시스템/소프트웨어.
- 파일의 단점 보완하고 대량의 데이터 효율적 관리 & 운영 위해 등장.
- 1973년 에드거 프랭크 커드(E.F.Codd)가 최초로 이론 정립.
📖 SQL(Structured Query Language)
- DBMS에 데이터 구축 & 관리 & 활용하기 위해(= DB 사용하기 위해) 사용되는 언어.
- SQL 이용해 DBMS를 통해 중요한 정보들 입력 & 관리 & 추출 가능.
👨👩👧👦 RDBMS의 데이터베이스 구성
- 최소 단위 : 테이블(table)
- 구성 : 하나 이상의 열(column, 세로) + 행(row, 가로) = 2차원 구조.
📖 SQL (Structured Query Language)
- 구조화된 질의 언어.
- 관계형 데이터베이스(RDBMS)에서 사용되는 언어.
- 일반적인 프로그래밍 언어와는 다른 특성 가짐.
- 표준 SQL (Standard SQL)
- 국제표준화기구에서 발표한 SQL 표준.
- SQL 사용 DBMS 만드는 회사 여러 곳.
- 회사 제품 특성 모두 포용 ❌ → 표준 SQL 준수 & 각 제품 특성 반영한 SQL 사용.
1. brew 최신 버전 업데이트
brew update
2. brew에서 MySQL 찾기
brew search mysql
3. brew에서 MySQL 설치
brew install mysql
4. brew에서 MySQL 설치 확인
brew list
5. brew에서 MySQL 설정
1) MySQL 서버 켜기
mysql.server start
2) MySQL 비밀번호 설정
mysql_secure_installation
3) 여러 질문에 응답하며 설치 완료
→ 'ALL done!' 나오면 설정 완료
6. MySQL 사용 명령어 입력
mysql -u root -p
7. 비밀번호 입력하면 MySQL 사용 환경 준비 완료
8. MySQL 서버 종료
mysql> /q
mysql.server stop
1. 설치 사이트 접속
https://dev.mysql.com/downloads/workbench/
2. Operating System이 'macOS'임을 확인 후 'Download' 클릭
3. 'No thanks, just start my download' 클릭
4. 설치 후 환경설정
📖 데이터베이스 모델링 (database modeling)
- 테이블 구조를 미리 설계하는 것
→ 작업을 DBMS의 DB 개체로 옮기기 위한 과정- 데이터베이스 모델링이 잘되어야 제대로 된 데이터베이스 구축 가능.
- 예시 : 폭포수 모델(waterfall model)의 업무 분석 & 시스템 설계 단계
🖥️ 소프트웨어 개발 절차 단계
1. 프로젝트 계획
2. 업무 분석
3. 시스템 설계
4. 프로그램 구현
5. 테스트
6. 유지보수
인덱스 검색(Index Scan) : 인덱스 통해 데이터 찾는 것.
ON member(member_name)
- member 테이블의 member_name열에 인덱스 지정.
CREATE INDEX idx_member_name ON member(member_name);
회원 테이블과 연결되는 회원 뷰(member_view)
CREATE VIEW member_view AS SELECT * FROM member;
2개의 SQL문 한번에 실행
DELIMETER // create procedure myProc() begin select * from member where member_name = "나훈아"; select * from product where product_name = '삼각김밥'; end// DELIMITER ;
1. 스토어드 프로시저 묶어주는 약속
첫 행 & 마지막 행에 구분문자 DELIMETER// ~DELIMITER;문 작성
2. BEGIN과 END 사이에 SQL문 작성
🚨 주의