728x90
728x90
Chapter8 SQL과 파이썬 연결 PyMySQL: 파이썬과 MySQL을 연결해주는 대표적인 외부 라이브러리 # 데이터베이스와 연동 conn = pymysql.connect(host=서버IP주소, user=사용자, password=암호, db=데이터베이스, charset=문자세트) 커서: 데이터베이스에 SQL 문을 실행하거나 실행된 결과를 돌려받는 통로 # 커서 변수 생성 cur = conn.cursor() # 테이블 생성, 커서이름.execute() cur.execute("CREATE TABLE userTable (id char(4), userName char(15), email char(20), birthYear int)") # 필요한 데이터만큼 반복 cur.execute("INSERT INTO u..
Chapter6 인덱스 6-1 인덱스 개념을 파악하자 인덱스: 데이터를 빠르게 찾을 수 있도록 도와주는 도구 클러스터형 인덱스(Clustered Index): 기본 키로 지정 시 자동 생성, 테이블에 1개 자동 정렬 보조 인덱스(Secondary Index): 고유 키로 지정 시 자동 생성, 여러 개 가능 but 자동 정렬 x 인덱스의 장단점 장점: SELECT문으로 검색하는 속도가 빨라져 컴퓨터의 부담이 줄어들며 전체 시스템의 성능이 향상된다 단점: 인덱스도 공간을 차지해서 데이터베이스 내부 추가 공간이 필요하다 인덱스 정보 확인: SHOW INDEX FROM table; 확인문제 인덱스는 SELECT문을 빠르게 처리합니다 인덱스는 추가적인 공간이 필요합니다 보조 인덱스는 고유 키를 설정하면 자동 생성..
Chapter5 테이블과 뷰 5-1 테이블 만들기 CREATE TABLE: 테이블을 생성하는 SQL, 테이블 이름, 열 이름, 데이터 형식 등을 지정 AUTO_INCREMENT: 열에 입력될 값을 1부터 자동 증 NOT NULL: 열에 빈 값을 허용 X PRIMARY KEY: 열을 기본 키로 지정 FOREIGN KEY: 열을 외래 키로 지정 빈칸인데 NULL이 아니면 오류 발생 - ' Set Field to NULL ' 실습 확인문제 CHAR, VARCHAR UNSIGNED: 정수형 데이터를 0부터 입력 TINYINT: -128~ + 127 DATE: 날짜형 VARCHAR: 가변형 문자형으로 짧거나 긴 문자가 뒤죽박죽 입력될 때 적절 GUI에서 테이블을 생성하는 방식 UNSIGNED는 UN 부분 체크 기..
4-3 SQL 프로그래밍 스토어드 프로시저: MySQL에서 프로그래밍 기능이 필요할 때 사용하는 데이터베이스 개체 # 스토어드 프로시저 형식 DEELIMITER $$ CREATE PROCEDURE 스토어드_프로시저_이름() BEGIN # 이 부분에 SQL 프로그래밍 코딩 END $$# 스토어드 프로시저 종료 DELIMITER;# 종료 문자를 다시 세미콜론으로 변경 CALL 스토어드_프로시저_이름()# 스토어드 프로시져 실행 IF문 BEGIN ~ END로 묶어줌 DECLARE로 변수 선언 SET으로 변수 대입 실습 CASE문 2가지 이상의 여러 가지 경우일 때 처리 가능 다중 분기 IF 대신 WHEN 대입 CASE문 활용 실습 WHILE문: 반복문 ITERATE[레이블]: 지정한 레이블로 가서 계속 징행합..
Chapter3 SQL 기본 문법 3-1 기본 중에 기본 SELECT ~ FROM ~ WHERE SELECT문 - 구축이 완료된 테이블에서 데이터를 추출하는 기능 - 기본 형식 SELECT ~ FROM ~ WHERE 실습용 데이터베이스 DROP DATABASE IF EXISTS market_db; -- 만약 market_db가 존재하면 우선 삭제한다. CREATE DATABASE market_db; USE market_db; CREATE TABLE member -- 회원 테이블 ( mem_id CHAR(8) NOT NULL PRIMARY KEY, -- 사용자 아이디(PK) mem_name VARCHAR(10) NOT NULL, -- 이름 mem_number INT NOT NULL, -- 인원수 addr ..