주차 |
차시 |
학습내용 |
평가활동 |
1주 |
1차시 |
정보와 데이터베이스
1. 강의주제: 정보와 데이터베이스
2. 강의목표:
① 데이터와 정보의 개념을 정의할 수 있다.
② 파일 시스템이 무엇인지 이해하고, 파일 시스템의 특징과 단점에 대해 말할 수 있다.
③ 데이터베이스의 도입 배경을 설명할 수 있다.
④ 데이터베이스 관리에 필요한 데이터베이스 관리시스템(DBMS)의 역할이 무엇인지 서술할 수 있다.
⑤ 데이터를 저장하는 방식을 통하여 연관된 데이터와 연관관계를 구조적으로 표현할 수 있다.
3. 강의세부내용:
① 데이터와 정보
- 데이터와 정보
② 파일 시스템의 특징과 단점
- 파일 시스템
③ 데이터베이스의 도입 배경
- 데이터베이스
④ 데이터베이스 관리 시스템
- 데이터베이스 관리 시스템
⑤ 데이터베이스 모델
- 데이터베이스 모델
|
|
2차시 |
데이터베이스 스키마
1. 강의주제: 데이터베이스 스키마
2. 강의목표:
① 데이터베이스 스키마와 트랜잭션을 이해하여, 데이터의 독립성을 설명할 수 있다.
② 데이터베이스시스템(DBMS)의 구성을 학습하고, 구성별 특징을 말할 수 있다.
③ 데이터 매핑 방법을 설명할 수 있다.
④ 데이터 독립성을 논리적, 물리적으로 구분할 수 있다.
3. 강의세부내용:
① 스키마와 트랜잭션
- 스키마
- 트랜잭션
② DBMS 구성
- 데이터 사전
- DDL 컴파일러
- DML 프리 컴파일러
- DML 컴파일러
- 런타임 데이터베이스 처리기
- 트랜잭션 관리자
- 저장 데이터 관리자
③ 데이터베이스 스키마
- 외부 스키마
- 개념 스키마
- 내부 스키마
- 스키마 예제
④ 매핑(사상)
- 매핑(Mapping)/ 사상
- 외부/개념 매핑
- 개념/내부 매핑
⑤ 데이터 독립성
- 데이터 독립성 (Data Independency)
- 논리적 데이터 독립성 (Logical Independency)
- 물리적 데이터 독립성 (Physical Independency)
|
|
3차시 |
정보통신망의 구성방식과 프로토콜
1. 강의주제: 정보통신망의 구성방식과 프로토콜
2. 강의목표:
① 정보통신 회선 구성 방식 종류와 각 종류별 장단점을 구분하여 설명할 수 있다.
② 프로토콜의 개념과 기능을 이해하고 표준(기구)가 무엇이 있는지 말할 수 있다.
3. 강의세부내용:
① 정보통신망의 구성방식
- 회선연결방식
- 통신망 구성 방식
② 프로토콜과 표준
- 프로토콜의 정의와 기능
- 표준과 표준기구
|
|
2주 |
1차시 |
개체관계 모델 및 ER 다이어그램
1. 강의주제: 개체관계 모델 및 ER 다이어그램
2. 강의목표:
① 데이터 모델 및 데이터 모델링의 개념을 설명할 수 있다.
② 개체-관계 모델을 이용해 모델링할 수 있다.
③ 개체-관계 다이어그램의 개념을 설명할 수 있다.
④ 데이터베이스의 3구성요소를 표준화된 ER 다이어그램을 사용하여 그림으로 표현할 수 있다.
3. 강의세부내용:
① 데이터 모델, 모델링(Mpdeling) 및 추상화
- 데이터베이스 구축의 의미
- 모델, 모델링(Modeling) 및 추상화
- 데이터 모델
- 데이터 모델링
② 개체-관계 모델 (ERM, ER Model, Entity Relationship Model)
- 개체-관계 모델
③ 개체-관계 다이어그램 (ERD, Entity Relationship Diagram)
- 개체-관계 다이어그램
|
|
2차시 |
개체 타입과 속성
1. 강의주제: 개체 타입과 속성
2. 강의목표:
① 개체와 개체타입의 정의와 유형에 대해 설명할 수 있다.
② 속성의 유형과 ER 다이어그램으로 표현하는 방법을 정의할 수 있다.
③ 속성의 개념을 알고 속성 값의 개수, 의미의 세분화 가능성, 개체 인스턴스를 식별하는 데 사용되는 속성 등으로 구분할 수 있다.
3. 강의세부내용:
① 개체와 개체타입
- 개체 타입(Entity Type)
- 개체 인스턴스 (Enitity Instance)
- 개체 집합 (Entity Set)
② 속성
- 속성/애트리뷰트 (Attribute)
- 속성의 ER 다이어그램 표현
③ 속성의 유형
- 키 속성 (Key Attribute)
- 속성 값의 개수에 따른 분류
- 의미의 세분화에 따른 분류
- 저장 속성 (Stored Attribute)과 유도 속성 (Derived Attribute)
- 널 속성 (Null Attribute)
- 개체의 속성의 ER 다이어그램 표현
|
|
3차시 |
관계와 IE표기법
1. 강의주제: 관계와 IE표기법
2. 강의목표:
① 관계와 관계타입의 개념을 알고, 관계타입의 ER 다이어그램을 표현할 수 있다.
② 약한 개체 타입과 식별자에 대하여 예를 들어 설명할 수 있다.
③ 식별 관계 타입에 대해 학습하고, 강한 개체 타입의 기본키를 상속받아 사용할 수 있다.
④ 개체-관계 다이어그램을 위한 IE 표기법을 설명할 수 있다.
3. 강의세부내용:
① 관계와 관계타입
- 관계와 관계타입
- 관계타입의 ER 다이어그램 표현
② 약한 개체 타입, 식별 관계 타입 및 식별자
- 약한 개체 타입
- 식별 관계 타입
- 식별자 (Discriminator) / 부분키 (Partial key)
- 예
- 정리
③ IE 표기법
- 피터첸 표기법과 IE 표기법 비교
- IE 표기법 비교
|
|
3주 |
1차시 |
기본용어와 릴레이션 구성요소
1. 강의주제: 기본 용어와 릴레이션 구성요소
2. 강의목표:
① 관계 데이터 모델의 기본 용어와 정의를 설명할 수 있다.
② 릴레이션을 구성하는 요소와 특징을 학습하고, 이름과 이에 포함된 속성으로 정의한 릴레이션의 논리적 구조를 설명할 수 있다.
③. 학습내용 :
① 관계 데이터 모델의 개요
- 관계 데이터 모델이란?
- 관계 데이터 모델의 기본 용어
② 릴레이션 구성과 특징
- 릴레이션 구성
- 릴레이션의 특징
|
|
2차시 |
키
1. 강의주제: 키
2. 강의목표:
① 릴레이션에서 키의 역할에 대해 설명할 수 있다.
② 릴레이션에서 키의 종류를 학습하고 예를 들어 설명할 수 있다.
③ 투플을 식별하기 위하여 사용되는 키를 수퍼키, 후보키, 기본키, 대체키, 외래키, 대리키로 구분할 수 있다.
3. 강의세부내용:
① 키
- 키(Key)
② 키의 종류
- 키의 종류
|
|
3차시 |
제약 조건
1. 강의주제: 제약 조건
2. 강의목표:
① 관계 데이터 모델의 무결성 제약의 의미와 필요성을 설명할 수 있다.
② 관계 데이터 모델의 무결성 제약 조건의 동작을 실행할 수 있다.
3. 강의세부내용:
① 데이터 무결성
- 데이터 무결성
② 무결성 제약 조건
- 종류
- 도메인 무결성 제약 조건
- 개체 무결성 제약 조건
- 참조 무결성 제약 조건
- 무결성 제약 조건 정리
|
|
4주 |
1차시 |
윈도우즈에 MySQL 설치하기
1. 강의주제: 윈도우즈에 MySQL 설치하기
2. 강의목표:
① 대표적인 DBMS와 MySQL의 특징에 대하여 설명할 수 있다.
② 윈도우즈 운영체제에서 MSI 파일을 이용하여 MySQL을 설치할 수 있다.
③ MySQL의 모든 환경을 Setup 할 수 있다.
3. 강의세부내용:
① DBMS 개요
- 관계형 데이터베이스 (RDB)
- MySQL
- MariaDB
- 버전별 관계도
② MySQL 설치 및 테스트하기
- MS-Windows에 MySQL 설치하기
- 환경 설정
- 설치한 MySQL 간단히 테스트하기
|
토론 |
2차시 |
기본 사용법, 사용자 관리와 권한 부여
1. 강의주제: 기본 사용법, 사용자 관리와 권한 부여
2. 강의목표:
① MySQL에서 사용할 데이터베이스를 지정하는 방법, 데이터베이스와 테이블 리스트를 보는 방법을 설명할 수 있다.
② MySQL에서 데이터베이스를 생성·삭제하며, 사용자 계정을 만들어보고 계정의 권한을 설정할 수 있다. 또한, 이를 통한 의미를 설명할 수 있다.
③ MySQL에 설정되어 있는 문자셋을 확인하고 변경하는 방법을 설명할 수 있다.
3. 강의세부내용:
① 사용할 데이터베이스 지정하기
- 로그인 시 데이터베이스 지정하기
- 로그인 후 데이터베이스 지정하기
② 데이터베이스 및 테이블 리스트 보기
- 데이터베이스 리스트 보기
- 테이블 리스트 보기
- 테이블 구조 살펴보기
③ 데이터베이스 생성 및 삭제
- 데이터베이스 생성
- 데이터베이스 삭제
④ 사용자 계정 만들기
- 현재 등록되어 있는 계정 확인하기
- 계정 만들기
- 지정한 계정에 특정 데이터베이스 접근 권한 주기
- 계정 비밀번호 변경하기
- 계정 삭제하기
⑤ 사용자 계정에 root 계정과 같은 권한 설정하기
⑥ 사용자 계정에 root 계정과 같은 권한 설정하기
⑦ 설정된 권한 조회하고 삭제하기
- 설정된 권한 조회하기
- 설정된 권한 삭제하기
- 실습
⑧ 문자셋 확인 및 설정하기
- 문자셋 확인하기
- 문자셋 설정하기
- 테이블 생성 시 문자셋 지정하기
|
|
3차시 |
데이터베이스 일괄 실행, 백업 및 복원
1. 강의주제: 데이터베이스 일괄 실행, 백업 및 복원
2. 강의목표:
① 데이터베이스 명령어들을 파일에 저장하고, 일괄 처리 실행을 통해 쉽게 변경할 수 있다.
② 데이터베이스 백업 후 복원하는 과정도 일괄 처리 방법을 사용할 수 있다.
3. 강의세부내용:
① MySQL 명령의 일괄 실행
- Windows 환경 설정
- MySQL 명령의 일괄 실행
② 데이터베이스 백업 및 복원
- 데이터베이스 백업
- 백업된 파일 내용 살펴보기
- 테이블 백업
- 데이터베이스 복원
- SQL 스크립트 파일 읽어 실행하기
|
|
5주 |
1차시 |
속성 정의와 데이터 타입
1. 강의주제: 속성 정의와 데이터 타입
2. 강의목표:
① SQL의 역할을 이해하고, 기능을 설명할 수 있다.
② SQL을 사용한 데이터 정의 방법 중 속성 정의가 무엇인지 이해하고 적용할 수 있다.
③ SQL에서 사용하는 데이터 타입을 구별할 수 있다.
3. 강의세부내용:
① SQL 개요
- SQL (Structured Query Language)
- SQL의 역사
- SQL 사용방법
- SQL의 분류
- SQL의 기능
② 테이블 생성- 속성 정의와 데이터 타입
- 실습용 데이터베이스
- 테이블 생성 - 속성 정의
- 실습용 데이터베이스 데이터 정의 (Customer 테이블)
- 실습용 데이터베이스 데이터 정의 (Items 테이블)
- 실습용 데이터베이스 데이터 정의 (Orders 테이블)
|
|
2차시 |
키와 제약조건 정의
1. 강의주제: 키와 제약조건 정의
2. 강의목표:
① SQL을 사용한 데이터 정의 방법 중 키 정의를 설명할 수 있다.
② 테이블 생성 시 SQL을 사용하여 제약 조건을 적용할 수 있다.
3. 강의세부내용:
① 테이블 생성 - 키 정의
- 기본키
- 대체키
- 외래키
② 테이블 생성 - 제약 조건 정의
- 제약 조건 정의
|
|
3차시 |
테이블 변경
1. 강의주제: 테이블 변경
2. 강의목표:
① 정의된 테이블에 새로운 속성을 추가하거나 기존 속성을 수정 또는 삭제하는 방법을 설명할 수 있다.
② 테이블의 제약 조건을 추가하거나 삭제할 수 있다.
③ 테이블의 이름을 변경하고 테이블을 제거할 수 있다.
3. 강의세부내용:
① 테이블 변경
② 테이블 이름변경 및 삭제
- 테이블 삭제
- 테이블 이름변경
- 테이블 관련 기타 질의
|
|
6주 |
1차시 |
SELECT 기본검색
1. 강의주제: SELECT 기본검색
2. 강의목표:
① 데이터 검색의 기본 형식에 대해 학습하고, 데이터를 검색하기 위하여 SELECT 문을 사용할 수 있다.
② 조건을 이용한 데이터 검색을 방법을 설명할 수 있다.
3. 강의세부내용:
① 데이터 조작어
- SQL의 데이터 조작 기능
- itbank 데이터베이스 초기화
- 질의 예제에 사용할 판매 데이터베이스
② 데이터 검색 (SELECT문)
- 데이터 검색 (SELECT문)
- 기본 검색
- 조건 검색
|
|
2차시 |
LIKE와 NULL
1. 강의주제: LIKE와 NULL
2. 강의목표:
① 검색조건을 정확히 모르는 경우와 부분적으로 일치하는 데이터를 검색하기 위한 경우의 조건작성법을 사용할 수 있다.
② 속성 값을 지정하지 않고 저장하는 경우와 자동으로 NULL값이 저장될 경우, 속성 값이 NULL과 같은지를 확인하기 위한 조건을 작성할 수 있다.
3. 강의세부내용:
① LIKE를 이용한 검색
- itbank 데이터베이스 초기화
- 질의1~5
② NULL을 이용한 검색
- 질의6~11
|
|
3차시 |
정렬과 집계함수
1. 강의주제: 정렬과 집계함수
2. 강의목표:
① 검색 결과 테이블의 투플을 사용자가 원하는 순서로 출력하는 방법에 대하여 설명할 수 있다.
② 집계함수를 사용하여 속성값에 대하여 통계적으로 계산할 수 있다.
3. 강의세부내용:
① 정렬검색
- 질의1~3
② 집계함수를 이용한 검색
- 질의4~7
③ 정렬검색과 집계함수 정리
|
|
7주 |
1차시 |
그룹별 검색
1. 강의주제: 그룹별 검색
2. 강의목표:
① GROUP BY 키워드를 사용하여 특정 속성의 값이 같은 투플을 모아 그룹을 만들어 검색할 수 있다.
② GROUP BY를 사용하여 그룹 생성 시 HAVING 키워드로 조건을 명시할 수 있고, 조건에 집계함수를 사용할 수 있다.
3. 강의세부내용:
① 그룹별 기본 검색
- 질의1~2
② 그룹별 조건 검색
- 질의3~6
- 정렬 검색 요약
- 그룹별 검색 기본 형식
|
|
2차시 |
조인 검색과 부속 질의문
1. 강의주제: 조인 검색과 부속 질의문
2. 강의목표:
① 여러 개의 테이블을 연결해주는 조인 속성을 이용하여 원하는 데이터를 여러 테이블로부터 검색할 수 있다.
② 질의문을 사용하여 검색한 결과로부터 다시 검색하는 부속 질의문을 이용한 검색방법에 대하여 설명할 수 있다.
3. 강의세부내용:
① 조인검색
- 질의1~3
② 부속 질의문을 이용한 검색
- 질의1~4
- 조인검색 요약
- 부속질의문 요약
|
|
3차시 |
확장된 조인 검색
1. 강의주제: 확장된 조인 검색
2. 강의목표:
① 확장된 내부 조인, 오른쪽 조인, 왼쪽 조인, 전체 조인의 의미를 이해하고 실습을 통하여 결과를 확인할 수 있다.
3. 강의세부내용:
① 확장된 조인 검색
② 내부 조인 (Inner Join)
- 질의1~2
③ 오른쪽 조인 (Right Join)
④ 질의3~4
⑤ 왼쪽 조인 (Left Join)
- 질의5
⑥ 전체 조인 (Full Join)
- 질의6
|
|
8주 |
1차시 |
중간고사
(객관식 20문항, 주관식 5문항)
|
시험 |
9주 |
1차시 |
별명, 기타 검색
1. 강의주제: 별명, 기타 검색
2. 강의목표:
① 별명을 만들어 질의문과 결과 테이블에 적용할 수 있다.
② 기타 데이터 검색 방법을 알아보고 적용해 볼 수 있다.
③ 다양한 질의문을 통해 실습하고 실제 적용해 볼 수 있다.
3. 강의세부내용:
① 별명(Alias) 만들기
- 질의1~3
② 기타데이터 검색
- 질의1
③ 검색결과를 파일로 저장하기
- 질의1~2
④ 시스템 프롬프트 상에서 데이터 검색
- 질의1~2
|
|
2차시 |
데이터 삽입
1. 강의주제: 데이터 삽입
2. 강의목표:
① 데이터를 테이블에 삽입하기 위하여 INSERT키워드를 사용할 수 있다.
② 테이블에 투플을 이용하여 데이터를 직접 삽입하는 방법과 부속 질의문을 이용해 삽입하는 방법을 구별할 수 있다.
3. 강의세부내용:
① 데이터 삽입 개요
- 주의사항
② 데이터 직접 삽입
- 질의1: 기본질의
- 질의2: 속성리스트
- 질의3: Default 값
- 질의4: NOT NULL
③ 부속 질의문을 이용한 데이터 삽입
- 질의1
|
|
3차시 |
데이터 수정 및 삭제
1. 강의주제: 데이터 수정 및 삭제
2. 강의목표:
① 테이블 내의 데이터를 수정 및 삭제하는 방법에 대하여 살펴보고, 실습을 통하여 결과를 확인할 수 있다.
3. 강의세부내용:
① 데이터 수정
- 질의1~3
② 데이터 삭제
- 질의1~3
|
|
10주 |
1차시 |
타입 변환, 연산자, 제어 흐름 함수
1. 강의주제: 타입 변환, 연산자, 제어 흐름 함수
2. 강의목표:
① 내장 함수의 의미를 알아보고, 내장 함수의 종류를 구별하여 설명할 수 있다.
② SQL 질의문에서 사용되는 표현식에서 자동 데이터 타입 변환 동작을 설명할 수 있다.
③ MySQL에서 제공하는 연산자와 제어 흐름 함수의 종류에 대하여 설명할 수 있다.
3. 강의세부내용:
① 내장 함수 (Build-In Function)
② 표현식에서 타입 변환
③ 연산자 (Operators)
④ 제어 흐름 함수 (Control Flow Functions)
- CASE 연산자
- IF() 함수
- IFNULL() 함수
*과제 주제 : 외래키 (정확한 주제는 개강 후 확인 요망)
|
과제 |
2차시 |
날짜, 시간, 수학 함수
1. 강의주제: 날짜, 시간, 수학 함수
2. 강의목표:
① MySQL에서 제공하는 날짜와 시간 내장 함수, 수학 함수에 대하여 살펴보고, 실습을 통하여 결과를 확인할 수 있다.
② 수학 함수 연산자의 의미와 기본형식을 설명할 수 있다.
3. 강의세부내용:
① 날짜와 시간 함수 (Date & Time Functions)
- DATE 관련 함수
- TIME 관련 함수
- TIMESTAMP 관련 함수
- DAY, MONTH, YEAR 관련 함수
② 수학 함수 (Mathematical Functions)
|
|
3차시 |
문자열 함수와 타입 변환 함수
1. 강의주제: 문자열 함수와 타입 변환 함수
2. 강의목표:
① MySQL에서 제공하는 문자열과 타입 변환 내장 함수에 대하여 살펴보고 실습을 통하여 익힐 수 있다.
② 문자열 함수를 비교 검색하기 위한 내장 함수와 검색된 데이터 내의 문자열을 처리하는 내장 함수로 구분할 수 있다.
3. 강의세부내용:
① 문자열 함수 (String Functions)
- 문자열 비교 함수
- 문자열 함수
② 타입 변환 함수 (Type Conversion Functions)
- BINARY
- CAST()
- CONVERT()
|
|
11주 |
1차시 |
압축 테이블, 임시 테이블과 뷰
1. 강의주제: 압축 테이블, 임시 테이블과 뷰
2. 강의목표:
① 압축 테이블과 임시 테이블을 생성하는 방법을 설명할 수 있다.
② 테이블의 행 형식을 COMPRESSED로 지정 후 생성된 압축 테이블을 이용하여 데이터 크기를 줄일 수 있다.
③ 뷰의 개념과 장점을 알아보고, 뷰를 생성하고 삭제하는 방법을 설명할 수 있다.
3. 강의세부내용:
① 압축 테이블
- 테이블 행 형식
② 임시 테이블
- 임시 테이블
③ 뷰
- 뷰(View) 개념
- 뷰 생성
- 뷰의 활용
- 뷰의 장점
- 뷰 삭제
|
|
2차시 |
인덱스
1. 강의주제: 인덱스
2. 강의목표:
① 자동으로 생성되는 인덱스에 대해 테이블을 생성하고 확인할 수 있다.
② 데이터 검색 동작 속도를 향상시키기 위하여 테이블에서 자주 사용하는 속성을 인덱스로 별도 지정할 수 있다.
③ 인덱스를 테이블의 검색 동작 속도를 향상시키기 위하여 사용할 수 있다.
④ 인덱스를 생성, 삭제하는 방법을 설명할 수 있다.
3. 강의세부내용:
① 인덱스 개요
② 자동으로 생성되는 인덱스
- 인덱스 조회
③ 인덱스 생성
- 질의1
④ 인덱스 삭제
|
|
3차시 |
파티션
1. 강의주제: 파티션
2. 강의목표:
① 파티션의 개요 및 필요한 경우, 유형, 사용 시 제약사항에 대하여 설명할 수 있다.
② 파티션을 생성, 조회하고, 데이터를 삽입하는 방법에 대하여 설명할 수 있다.
③ 파티션을 분할, 병합, 삭제하는 관리 방법을 설명할 수 있다.
3. 강의세부내용:
① 파티션의 개요
② 파티션 개요
③ 파티션 구현- 생성, 조회, 데이터 삽입
- 파티션으로 분리되는 테이블 생성
- 생성된 파티션 조회
- 테이블에 데이터 삽입
- 삽입한 데이터 조회
- 파티션에 저장된 데이터 현황 조회
- credit이 15000 이상인 고객 조회
- ""credit이 15000 이상인 고객 조회""시 사용한 파티션 확인
- 계정(account)가 king의 credit 15000을 7000으로 변경하고 파티션 정보 확인하기
④ 파티션 관리 - 분할, 병합, 삭제
- 파티션 분할
- 파티션 병합
- 파티션 삭제
|
|
12주 |
1차시 |
스토어드 프로시저
1. 강의주제: 스토어드 프로시저
2. 강의목표:
① 스토어드 프로시저의 개념을 설명할 수 있다.
② 스토어드 프로시저(Stored Procedure)를 이용하여 쿼리의 집합과 일괄 처리하여 사용할 수 있다.
③ 매개 변수, 오류처리 방법을 설명할 수 있다.
④ 스토어드 프로시저를 만들고 사용하는 방법, 저장된 프로시저의 이름과 내용, 매개변수 확인하는 방법을 학습하고 활용할 수 있다.
3. 강의세부내용:
① 스토어드 프로그램과 스토어드 프로시저의 개요
- 스토어드 프로그램의 개요
- 스토어드 프로시저 (Stored Procedure)
② 매개 변수와 오류처리
- 매개 변수
- 오류 처리
③ 스토어드 프로시저 생성하고 사용하기
- 입력 매개변수가 있는 스토어드 프로시저(customerProc① 작성하기
- 프로시저를 MySQL에서 읽기
- 프로시저(customerProc① 실행하기
- 출력 매개변수가 있는 스토어드 프로시저 작성
- 프로시저 파일(testProc.sql)를 MySQL에서 읽기
- 프로시저 파일에서 추가한 테이블 확인하기
- 프로시저에 입력 매개변수를 사용하여 실행하고 반환값 확인하기
- 테이블(testTable)에 삽입된 값 확인
④ 현재 저장된 프로시저의 이름과 내용 확인하기
⑤ 프로시저의 매개변수 확인하기와 프로시저의 내용 확인하기
- 프로시저의 매개변수 확인하기
- 프로시저의 내용 확인하기
⑥ 스토어드 프로시저의 장점
|
|
2차시 |
스토어드 함수
1. 강의주제: 스토어드 함수
2. 강의목표:
① 스토어드 함수 개요, 형식, 시스템 변수 설정, 실행 방법에 대하여 설명할 수 있다.
② 스토어드 프로그래밍을 하기 위한 기본 형식이 무엇이 있는지 나열할 수 있다.
③ 스토어드 함수를 만들어 MySQL에서 읽을 수 있게 할 수 있다.
④ 스토어드 함수의 반환 값 저장, 테이블 검색에 사용하는 방법을 알고 사용해 볼 수 있다.
3. 강의세부내용:
① 스토어드 함수 (Stored Function)
- 스토어드 함수 개요
- 형식
- 스토어드 함수와 스토어드 프로시저의 차이점
- 스토어드 함수 사용을 위한 시스템 변수 설정
- 예제
- 실행
② 스토어드 프로그래밍
- 변수 선언
- 할당문
- 실행문
- IF...ELSE문
- CASE문
- WHILE문
- 라벨문
- ITERATE문과 LEAVE문
③ 스토어드 함수 생성하고 사용하기
- itbank 데이터베이스 초기화하기
- 스토어드 함수 만들기
- MySQL에서 스토어드 함수 읽기
- 스토어드 함수 간단하게 테스트하기
- 스토어드 함수의 반환 값을 SELECT ... INTO문으로 저장하여 사용하기
- customer 테이블 검색에 사용하기
- 저장된 스토어드 함수 이름과 내용 확인하기
- 스토어드 함수 삭제하기
|
|
3차시 |
커서와 트리거
1. 강의주제: 커서와 트리거
2. 강의목표:
① 커서의 속성과 사용방법을 알아보고, 예제를 통하여 활용할 수 있다.
② 커서를 이용하여 일반 프로그래밍 언어로 파일 처리를 하는 것과 비슷한 방식으로 테이블의 행(투플) 집합을 다룰 수 있다.
③ 트리거의 개념과 종류를 알아보고, 예제를 통하여 사용방법을 설명할 수 있다.
3. 강의세부내용:
① 커서
- 커서의 개요
- 커서 활용하기
② 트리거
- 트리거의 개요
- 트리거의 종류
- NEW와 OLD 키워드
- 다중 트리거와 중첩 트리거
|
|
13주 |
1차시 |
정규화
1. 강의주제: 정규화
2. 강의목표:
① 정규화의 개념과 필요성에 대해 설명할 수 있다.
② 이상 현상의 개념을 학습하고 이상 현상의 결과로 무엇이 나올 수 있는지 말할 수 있다.
③ 함수 종속의 종류를 구분할 수 있다.
④ 정규화의 종류와 장단점 등에 대해 설명할 수 있다.
3. 강의세부내용:
① 정규화 개요
② 이상 현상
- 이상 현상의 예
- 이상 현상의 결과
③ 함수 종속성
- 함수 종속성 개념
- 함수 종속성 다이어그램
- 함수 종속 종류
④ 정규화
- 제1정규형 (1NF)
- 제2정규형 (2NF)
- 제3정규형 (3NF)
- BC정규형(BCNF)
- 반정규화(De-normalization)
|
|
2차시 |
자바 응용 프로그래밍 개요
1. 강의주제: 자바 응용 프로그래밍 개요
2. 강의목표:
① 자바의 개념, 목적, 특징 등에 대해 학습하고, 자바 개발 환경에 대해 설명할 수 있다.
② JDBC의 개념, 구조도, 설치환경 등을 학습하고 실행해 볼 수 있다.
3. 강의세부내용:
① JAVA
- 프로그래밍 언어
- 컴파일
- 자바의 목적
- WORA (Write Once Run Anywhere)
- WORA를 가능하게 하는 자바의 특징
- 자바의 실행
- 자바의 배포판
- 자바 개발 환경
② JDBC 개요
|
|
3차시 |
자바 프로그래밍 – MySQL 연동
1. 강의주제: 자바 프로그래밍
– MySQL 연동
2. 강의목표:
① 자바와 MySQL을 연동하는 방법을 설명할 수 있다.
② MySQL에 질의하고 결과를 받기 위한 자바 클래스와 메서드를 살펴보고 실습을 통하여 적용할 수 있다.
③ 데이터베이스를 사용하기 위하여 자바의 Statement 클래스와 ResultSet 클래스를 사용할 수 있다.
3. 강의세부내용:
① 자바와 MySQL의 연동
- 연동방법
- Eclipse의 프로젝트에 드라이버 라이브러리 설치하기
- MySQL의 Timezone 설정하기
- Java 응용 프로그램 작성
② 데이터베이스 사용
- Statement 클래스 메소드
- ResultSet 클래스
- 데이터 검색 예
- 검색된 데이터의 사용
- 데이터 변경
|
|
14주 |
1차시 |
웹 프로그래밍 개요
1. 강의주제: 웹 프로그래밍 개요
2. 강의목표:
① 웹에 대한 전반적인 환경 구성과 프로그래밍 언어에 대하여 설명할 수 있다.
② PHP와 MySQL을 연동하는 방법을 이해하고 적용해 볼 수 있다.
3. 강의세부내용:
① 웹프로그래밍 개요
- 웹페이지
- 웹 서버 프로그래밍 언어
- 웹 서버의 종류
- 웹 구성도
② PHP와 MySQL 연동하기
- 알아두어야 할 사항
- PHP와 MySQL의 연동
- PHP에서 MySQL 연결하기
- PHP에서 MySQL 연결끊기
|
|
2차시 |
PHP에서 MySQL사용하기
1. 강의주제: PHP에서 MySQL 사용하기
2. 강의목표:
① MySQL에 로그인하여 데이터베이스를 선택하고, 테이블로부터 데이터를 조작하는 모든 작업을 PHP 함수를 통하여 할 수 있다.
② MySQL 사용을 위한 PHP 프로그래밍 절차에 대하여 설명할 수 있다.
③ MySQL 결과를 처리하기 위한 mysqli 함수를 사용할 수 있다.
3. 강의세부내용:
① MySQL 사용을 위한 PHP 프로그래밍 절차
- 데이터베이스 생성하기
- 일반적인 질의를 위한 형식
② mysqli 함수
- MySQL 서버 연결 및 해제 함수
- 환경 설정 함수
- 질의 함수
- 결과 데이터 현황 조회 함수
- 데이터 패치 함수
|
|
3차시 |
Python에서 MySQL작성하기
1. 강의주제: Python에서 MySQL 작성하기
2. 강의목표:
① Python을 웹서버에서 사용하기 위한 환경을 구축할 수 있다.
② Python을 MySQL과 연동하여 프로그래밍하는 기법을 익히고 설명할 수 있다.
③ CGI를 사용하여 웹 서버로부터 통신하고 웹 프로그램을 작성할 수 있다.
④ Python으로부터 웹 서버에 있는 MySQL을 접속하여 테이블 데이터를 검색하고 웹 브라우저에 표시하는 방법을 설명할 수 있다.
3. 강의세부내용:
① Python 개요
- Python을 사용하기 위한 CGI를 Apache 웹 서버에 설정하기
- Python에서 직접 MySQL에 접속하기 위한 프로그램 설치하기
- Python의 데이터베이스 연결 함수
- Python의 MySQL 커서 함수
② MySQL 사용을 위한 Python 프로그래밍
- Python에서 MySQL 사용하는 절차
- 일반적인 질의를 위한 형식
- Python을 이용한 웹 프로그래밍
|
|
15주 |
1차시 |
기말고사
(객관식 20문항, 주관식 5문항)
|
시험 |