본문 바로가기

혼자 공부하는 SQL(혼공단 9기)

(6)
(6주차) Chapter 07 ~ 08 내용 정리 Chapter 07.스토어드 프로시저 07-1. 스토어드 프로시저 사용 방법 1) 스토어드 프로시저 정의와 기본 형식 스토어드 프로시저 : MySQL에서 제공하는 프로그래밍 기능, 쿼리문의 집합으로도 볼 수 있음, 어떠한 동작을 일괄 처리하기 위한 용도로 사용됨. DELIMITER $$ CREATE PROCEDURE 스토어드_프로시저_이름(IN 또는 OUT 매개변수) BEGIN -- 이 부분에 SQL 프로그래밍 코드를 작성 END $$ DELIMITER ; 1)-1. 스토어드 프로시저 호출 : CALL CALL 스토어드_프로시저_이름(); 1)-2. 스토어드 프로시저 삭제 : DROP PROCEDURE : CREATE PROCEDURE에서는 스토어드 프로시저 이름 뒤에 괄호를 붙이지만, DRO..
(5주차) Chapter 06 내용 정리 Chapter 06. 인덱스 06-1. 인덱스 개념을 파악하자 1) 인덱스 정의 : 데이터를 빠르게 찾을 수 있도록 도와주는 도구 : 실무에서는 현실적으로 인덱스 없이 데이터베이스 운영이 불가 : 데이터를 찾을 때 인덱스 사용 여부에 따라 결과값의 차이는 없음. 2) 인덱스의 장단점 - 장점 : SELECT 문으로 검색하는 속도의 향상 : 그 결과 컴퓨터의 부담이 줄어 전체 시스템 성능이 향상 - 단점 : 인덱스도 공간을 차지하기에 데이터베이스 안에 추가적인 공간이 필요 (대략 테이블의 10% 정도의 공간이 추가로 필요) : SELECT가 아닌 데이터의 변경 작업(INSERT, DELETE, UPDATE)이 자주 일어나면 오히려 성능이 나빠질 수 있음. : 데이터에 인덱스를 생성해 놓아도 인덱..
(4주차) Chapter 05 내용 정리 Chapter 05. 테이블과 뷰 05-1. 테이블 만들기 1) 데이터베이스 생성하기 DROP DATABASE IF EXISTS naver_db; CREATE DATABASE naver_db; 2) 테이블 생성하기 : 기본 키로 지정된 열에는 NOT NULL을 생략해도 당연히 NOT NULL로 취급함. : AUTO_INCREMENT로 지정한 열은 PRIMARY KEY나 UNIQUE로 지정해야 함. : 외래 키는 테이블을 만들 때 제일 마지막에 FOREIGN KEY 예약어로 지정함. : 기본 키 - 외래 키는 일대다로 연결되는 관계 : 백틱(`)은 테이블 이름이나 열 이름을 묶을 때 사용 CREATE TABLE member( mem_idCHAR(8)NOT NULLPRIMARY KEY, mem_n..
(3주차) Chapter 04 내용 정리 Chapter 04. SQL 고급 문법 04-1. MySQL의 데이터 형식 1) 데이터 형식 1)-1. 정수형 데이터 형식 바이트 수 숫자 범위 TINYINT 1 -128 ~ 127 SMALLINT 2 ~32,768 ~ 32,767 INT 4 약 -21억 ~ 21억 BIGINT 8 약 -900경 ~ 900경 - Out of range : 입력값의 범위를 벗어남. - UNSIGNED : 0이상의 양수 1)-2. 문자형 데이터 형식 바이트 수 CHAR(개수) 1 ~ 255 VARCHAR(개수) 1 ~ 16,383 - CHAR, VARCHAR로만 쓰면 CHAR(1), VARCHAR(1)과 동일 - 데이터가 숫자 형태라도 연산이나 크기에 의미가 없다면 문자형으로 지정하는 것이 좋음. 1)-3. 대량의..
(2주차) Chapter 03 내용 정리 Chapter 03. SQL 기본 문법 03-1. 기본 중에 기본 SELECT ~ FROM ~WHERE 1) USE문 : SELECT문 USE 데이터베이스_이름; 2) SELECT문 SELECT 열_이름 FROM 테이블_이름 WHERE 조건식 GROUP BY 열_이름 HAVING 조건식 ORDER BY 열_이름 LIMIT 숫자 - 원래 테이블의 전체 이름은 데이터베이스_이름.테이블_이름 형식으로 표현하지만 USE문으로 선택된 데이터베이스가 자동으로 선택되므로 데이터베이스_이름 생략 가능. - 'SELECT 열_이름'에서 열_이름의 순서는 보고 싶은 순서대로 열을 나열 - 별칭(alias) : 열_이름 다음에 지정하고 싶은 별칭을 입력하면 됨. 별칭에 공백이 있을 경우 큰따옴표(")로 묶어줌. ..
(1주차) Chapter 01 ~ 02 내용 정리 Chapter 01. 데이터베이스와 SQL 01-1. 데이터베이스 알아보기 - DB : 데이터의 집합 - DBMS : DB를 운영/관리하는 프로그램 - 테이블 : DB의 최소 단위로, 하나 이상의 열과 행으로 구성(RDBMS의 핵심 개체) - SQL : DB를 구축, 관리, 활용하기 위해서 사용되는 언어 - DBMS의 분류 : 계층형(hierarchical), 망형(network), 관계형(relational), 객체지향형(object-oriented), 객체관계형(object-relational) 등으로 분류 01-2. MySQL 설치하기 - Root : MySQL의 모든 권한이 있는 관리자의 이름 - SHOW DATABASES : MySQL 서버에 있는 DB목록을 출력 Chapter 02...