728x90
반응형

https://youtu.be/NWICfDOzN8c



1. 관계 데이터베이스 언어(SQL)의 이해

1-1. SQL의 특성과 용도
-  SQL은 표준 관계 데이터 언어로써 데이터의 정의, 조작, 제어 기능을 제공
-  SQL은 비절차적 언어로 특정 언어가 삽입된 형태를 참조로 함
- (중요) SQL의 3가지 기능은 데이터의 정의, 조작, 제어
-  SQL은 MSSQL과 MSSQL로 비교적 널리 사용되며, MSSQL이 가장 많이 이용

1-2. SQL의 세부 기능과 활용
-  SQL은 데이터의 정의, 조작, 제어를 위한 다양한 명령어를 제공
-  SQL의 주요 명령어는 DDL(데이터 정의, 데이터 조작, 데이터 콘트롤)로 나뉨
-  DDL은 테이블이나 스키마 생성 명령어로, 데이터의 생성과 조작에 주로 사용
- (중요) MSSQL은 데이터의 저장과 통합, 제어를 위한 명령어로 사용

1-3. SQL의 사용 사례와 시험 준비
-  SQL은 데이터베이스의 설계, 운영, 통합에 광범위하게 활용됨
-  SQL의 명령어는 데이터의 생성, 조작, 제어를 통해 데이터베이스의 효율성과 정확성을 높임
-  SQL의 이해와 사용 능력은 데이터베이스의 성능과 효과적인 운영에 중요
-  SQL 시험은 강의 내용을 바탕으로 만들어지며, 주요 데이터베이스 관련 개념을 주로 다룸

2. 데이터베이스의 데이터 정의 및 조작 작업

2-1. 데이터 정의 및 조작 작업의 개요
-  데이터 정의어(DDL)는 데이터베이스의 구조와 제어 규칙을 명세하는 언어임
-  DDL의 주요 요소로는 스키마, 도메인, 테이블, 인덱스, 뷰, 인덱스 값 등이 있음
-  데이터의 생성, 변경, 제거 작업은 DDL의 명령문에 의해 이뤄짐
- (중요) 데이터의 생성은 새로운 테이블을 생성하거나, 기존 테이블의 열값과 행값을 변경하는 작업을 포함함
-  변경의 대상은 도메인과 테이블이며, 제거의 대상은 동일하게 스키마, 도메인, 테이블, 인덱스 뷰임

2-2. 데이터 조작 작업의 종류 및 적용
-  데이터 조작 작업에는 검색 작업인 '실렉트', 삽입 작업인 '인설트', 삭제 작업인 '디트', 갱신 작업인 '업데이트'가 있음
-  '실렉트'는 특정 테이블에서 어떤 특정 열 값을 생성하거나 변경하는 작업을 의미함
-  '인설트'는 특정 테이블에 새로운 행을 삽입하는 작업임
-  '디트'는 테이블에서 특정 열 또는 행을 삭제하는 작업임
- (중요) '업데이트'는 데이터의 내용을 변경하는 갱신 작업임

2-3. 데이터베이스의 관리 및 로컬 로컬 환경
-  DBA는 DB가 사용자에게 권한을 부여하고, 해당 권한을 제어하는 작업을 함
-  그랜트, 리보트, 롤백 명령문을 사용해 DBA의 권한 제어를 제어함
-  트랜젝션은 데이터베이스에서 활동하는 프로세스로, 현재 수행 중인 프로그램의 상태를 나타냄
- (중요) DBA의 로컬 환경과 이에 적용되는 다양한 명령문들을 이해하는 것이 중요함

3. 데이터베이스 생성

3-1. 데이터베이스 생성 개요
-  데이터베이스를 생성하는 데 필요한 절차를 설명함
-  사용자 정의를 통해 스키마를 생성하고, 권한을 지정하는 방법을 소개함
-  도메인을 정의하고, 도메인에 속성과 제약 조건을 설정하는 방법을 가르침
- (중요) 에스큐엘 랭귀지에서 지원하는 데이터 타입과 기본값, 제약 조건을 이해하는 것이 중요함
-  도메인의 제약 조건을 통해 도메인의 무결성을 보장하는 방법을 설명함

3-2. 데이터 타입과 제약 조건
-  데이터 타입을 정의하고, 각 타입에 해당하는 숫자, 문자열 등의 값을 설명함
-  기본값, 제약 조건, 무결성에 대해 이해하는 것이 필요함
-  제약 조건을 통해 도메인의 무결성을 보장하고, 이를 위배하는 경우 에러를 발생시킴
-  남성과 여성이라는 각각의 문자로 표현되는 성별 도메인의 제약 조건을 예시로 듬
-  도메인의 무결성에 위배되는 경우, 에러 메시지를 통해 그 원인을 제공함

3-3. 에스큐엘 지원 데이터 타입
-  에스큐엘에서 지원하는 데이터 타입과 기본값, 제약 조건을 가르침
-  정수 데이터를 아이엔티와 스몰 아이엔티로 표현하고, 실수 데이터를 아이엔티, 스몰 아이엔티로 정의함
-  고정 길이 문자를 비트, 가변 길이 문자를 밸리 유브 비트라고 명칭함
-  데이터 타입에 따라 처리되는 데이터의 범위를 이해하는 것이 중요함

4. 데이터베이스와 SQL 명령문 이해

4-1. 데이터의 타입과 테이블 생성
-  데이터의 타입에 따라 데이터의 유형을 지정함
-  문자, 숫자 등 데이터의 타입에 따라 정수, 실수 등으로 표시함
-  테이블을 생성하는 명령어 형식과 테이블의 속성명 데이터 타입으로 언급함
-  프라이머리 키, 유니크, 대체 키, 포링키 등 테이블 생성의 속성들에 대해 설명함
- (중요) 테이블의 속성명 데이터 타입으로 봐야할 부분은 크리에이터 테이블 테이블

4-2. 테이블의 속성과 제약사항
-  테이블의 속성명과 데이터 타입에 대해 언급함
-  프라이머리 키, 유니크, 대체 키, 포링키 등 테이블 생성 시 고려해야 할 제약사항에 대해 설명함
-  속성의 길이와 제약사항에 대해 이야기함
- (중요) 데이터의 긴 이름이나 빈값 허용 여부, 데이터 테이블에서의 생년월일 기준 등의 예시 제시함

4-3. SQL 명령문의 예시와 결과
-  SQL 명령문을 이용하여 테이블을 생성하는 예시를 제공함
-  테이블의 속성과 제약사항에 대해 설명함
-  명령문의 각 속성에 대해 설명하고 그에 따른 테이블 생성 결과를 언급함
-  테이블의 속성명과 제약사항에 대한 이해의 중요성을 강조함
- (중요) 테이블 생성 시 고려해야 할 점들과 명령문의 예시를 통해 이해를 돕고 있음

5. DBA를 이용한 데이터베이스 생성 및 관리

5-1. DBA를 이용한 데이터베이스 생성
-  DBA는 데이터베이스를 생성하는 프로그래밍 언어임
-  사용자에게 직접 DB를 생성하는 대신, DBA가 생성 명령을 내릴 수 있음
- (중요) DBA의 주요 명령어로는 테이블 생성, 테이블 속성 추가, 테이블 검색, 테이블 생성 등이 있음
-  DBA를 이해하고 사용할 수 있어야 데이터베이스를 안정적으로 생성 및 관리할 수 있음

5-2. DBA의 다양한 활용과 뷰의 정의
-  DBA를 이용해 테이블을 생성하면, 그 테이블을 '크리에이터 뷰'라고 부름
-  크리에이터 뷰는 외부 스키마를 활용하여 가상 테이블을 생성하는 것과 같음
-  사용자가 볼 수 있는 테이블을 뷰라고 하며, 이는 서버 스키마라고도 함
-  테이블에서 필요한 정보만 추출해서 뷰로 만들어 사용함

5-3. 인덱스와 테이블의 변환
-  인덱스는 검색을 빠르게 하기 위해 만들어진 데이터 구조로, 크리에이터 명령문을 통해 생성 가능함
- (중요) 인덱스 테이블의 형식은 '키', '유일', '중요' 등의 특성에 따라 다름
-  테이블의 변환 명령을 통해 필요한 속성을 추가하거나, 속성의 값을 변경하거나, 속성을 제거할 수 있음
-  엘트 테이블 명령은 새로운 속성을 추가하는 것을, 드랍 테이블 명령은 속성을 제거하는 것을 의미함

6. 데이터베이스 관계 명령어

6-1. 데이터베이스 명령어 종류
-  DDL은 데이터를 정의하는 첫 번째 명령어임
-  DDL은 크리에이트, 에이트, 드랍, 캐스케이트, 리스트릭의 네 가지 유형으로 나뉨
-  크리에이트는 데이터를 생성하는 것을 의미함
-  에이트는 데이터를 변경하는 것을 의미함
-  드랍은 데이터를 삭제하는 것을 의미함
-  캐스케이트는 활동 중이더라도 데이터를 삭제하는 것을 의미함

6-2. DDL 명령어 이해
-  엘트는 테이블에 추가, 변경, 삭제하는 것을 의미함
- (중요) 드랍은 테이블의 어떤 속성을 추가하거나 제거하는 것을 의미함
-  캐스케이트는 활동 중이더라도 데이터를 삭제하는 것을 의미함
-  리스트릭은 활동 중이면 데이터 삭제가 불가능함
-  캐스케이트와 리스트릭의 사용은 시험에 나올 수 있음

6-3. DDL 명령어 예제
-  학생 테이블을 지우라는 명령은 '드랍 테이블 학생 캐스케이드'로 표현할 수 있음
-  학생 테이블에 사용 중인 캐스케이드를 모두 삭제하면 테이블 전체가 삭제됨
-  '어떻게'는 제거하고 싶은 속성을 지정하여 제거할 수 있음
-  '활동 중이더라도 제거'는 '캐스케이트'를 사용하여 이뤄짐
-  '역시 삭제가 불가능하다'는 '리스트릭'을 사용하여 이뤄짐

화자 1
00:10
자 전국에 계시는 우리 엠투엠 생방송 안방 가족 여러분 오늘 또 뜨거운 가슴으로 두사부일체의 정신으로 감동의 수업을 함께 하겠습니다. 아 좋습니다. 예 자 이제 아이고 오늘 목요일입니까? 좋아요. 이제 오늘 내일이면 또 즐거운 공휴일이네 그죠 좋습니다. 현재 우리가 데이터베이스의 세계에서 환상적으로 우리가 정리하고 있지 그래서 지난 시간에 우리가 이제 데이터 모델링에 대해서 배웠죠 그죠 데이터 모델링 특히 가장 널리 이용되는 DB가 뭐다 RDB 관계 데이터 모델까지 우리가 배웠잖아요. 그죠 그래서 출제가 많이 되죠.

화자 1
00:54
그쪽에서 데이타 모델링 그리고 음 관계 데이터 베이스 모델링인데 정리하자면 어떤 거고, 현실 세계에 이 무질서한 데이터를 데이터들 개체들 객체들 이 객체들은 전부 다 뭐 속성을 가지고 있고 또는 이 개체와 개체들은 많은 관계로 이 세상이 이루어지잖아. 그래서 이놈의 일대 컴퓨터에 이제 이놈을 이 관계를 다 규명해서 컴퓨터의 데이타베이스화 하려면 뭐다 제일 먼저 우리가 정보 모델링 즉 개념적으로 설계를 해야 된다. 이 개념적 설계에 이용되는 게 뭐다 이알 다이아그램 알겠나 엔티티 릴레이션 다이어그램 생각나나 그리고 이 개념적 설계를 통해서 즉 이알 다이아그램을 보고 뭘 한다. 우리가 이제 논리적 설계를 한다.

화자 1
01:43
즉 데이터 모델링을 하제 그래서 논리적 데이터 설계를 해야 되는데 논리적 설계 방법은 이제 우리가 계층 구조인 계층 DB로 계층 데이터 모델로 할 수도 있고 그다음에 망으로도 할 수가 있고 그다음에 행렬 즉 테이블로 할 수 있잖아. 근데 가장 늘 이용되는 게 뭐다 오케이 RDB 관계 데이터 모델이 가장 좋더라 그래서 어 관계 데이터 모델도 우리가 설계를 하고 어 이 데이타 설계가 끝나고 난 뒤에 이놈이 뭐다 바로 물리적인 저장소의 1과 0으로 물리적 설계로써 들어가는 거죠. 맞나 그래서 우리가 ER DIARGRAG을 보고 테이블을 만들고 이 테이블을 케 이 테이블이 뭐다 이제 컴퓨터에 포팅이 되는 그래서 우리가 크게 어떤 거 분석을 하고 개념적 설계 논리적 설계 물리적 설계 단계를 거쳐서 뭐가 된다. 구현이 되고 이 데이터베이스는 실제 저장이 되고 통합이 되어서 운영되고 하죠. 데이터들이 이제 갱신이 되고 이렇게 합니다.

화자 1
02:41
오케이 그래서 지난 시간에 데이터 모델링의 개념 그리고 특히 관계 데이타 모델에서도 배아체 그래서 우리가 테이블을 두고 어트리뷰처 레코드 저 뭡니까? 튜플 그죠 도메인 생각나나 그 다음에 차수 카디널리티 릴레이션스 키마 또 릴레이션 인스턴스 생각납니까 그리고 각종 중요한 것들 키에 대해서도 배웠죠 그죠 정리한다. 케이 씨케이 후보키 그 다음에 기본 키 피K4링키 에프케이 그리고 뭐야? 슈퍼킥 에스케이 아직 몸이 좀 안 좋은데 껄걱거리네 좋습니다. 그래서 그런 정의를 다 했고 특히 관계 연산 관계 대수연산과 관계해석연산 정의를 잘 해놓기 바랍니다. 문제 꿀이다. 그래서 됐습니다.

화자 1
03:33
자 오늘은 실제 우리가 이제 가장 관계 RDBS에서 가장 널리 이용되는 실제 언어 데이터베이스의 언어를 배워보자 그죠 관계 데이타 언어로 들어갑니다. 관계 데이터베이스 언어 DBMS를 배워보자 이 말입니다. 오케이 자 뭔 말인지 알겠나 앞부분에서 설계를 해갖고 테이블을 만들었잖아. 이 테이블을 만든 걸 가지고 실제 데이터베이스 언어예요. 보통 우리가 이 관계 데이터베이스 언어를 배우는데도 실제 실무에서는 몇 달 걸리지 이걸 오늘 2시간 만에 자살됩니다. 한번 봐라 여러분 비록 2시간이지만 1학기예요. 대학에서는 알겠나 해서 완벽 속성으로 정리한다. 그죠 그래서 시험은 너무나 단순하게 나오지만 이왕 에스큐엘이란 언어 하나를 배웁니다. 오늘 2시간에 걸쳐서 헐렐루야 끝내 주제 어떻게 강의하는지 기대해도 좋습니다.

화자 1
04:22
자 에스큐엘 스트럭처 필히 랭겨지죠 그죠 에스큐엘 스트럭처더 목이 퀴리 랭귀지 구조적 지리 언어 악해가지고 RDBS에서 사용하는 표준언어입니다. 표준언어 그리고 앞에서 배운 관계 대수와 관계 해석에 기초한 데이터베이스를 실제 테이블을 정의하고 조작하고 제어하는 언어가 SQL이죠. 그죠 이 SQL 중에서 가장 늘 이용되는 게 마이크로소프트에서 개발한 MSSQL이 오늘날 가장 늘 이용됩니다. 우리 회사의 데이터베이스도 SQL 특히 SSQL로 만들었고 MSSQL 즉 이 퀴리 랭귀지로 질의를 하고 또 데이터를 운영하고 통합하고 저장하고 처리를 합니다. 알겠나 또 인제 SQL 외에도 많이 이용되는 게 오라클 하는 곳 있습니다. 오라클 유명한 어 RDB 언어예요.

화자 1
05:18
오라클 그러니까 보통 에스큐엘은 윈도우 환경에서 많이 탑재가 되고요. 오라클은 이제 유닉스 또는 뉴스에서 많이 이용을 합니다. 그래서 보통 아직까지는 인제 에스큐엘 막 이거 외에도 뭐 하나 또 피씨 단위에서는요 마이 엑세스 가능하죠. MS 엑세스 요런 어 관계 DB 언어도 있고 또 마이에스큐엘 하는 것도 있습니다. 마이 에스큐엘 좀 소규모 컴퓨터에서 하는 거죠. 그러니까 표준 관계 데이터 언어가 뭐다 MSSQL과 오라클인데 우리는 뭐 배운다 MSSQL 즉 스트라처 퀴리 랭귀지의 원리를 배우는 거다 이해되나 그럼 여러분들 데이타베이스를 배우면 바로 이거 배우는 거거든요. 이 언어를 데이타베이스 언어를 배우면 뭐다 DBA가 됩니다. 그래서 이미 정보처리 내 강의를 여러분 들으면은 DBA로 탄생된다. 이런 말이야. 알겠어 좋습니다. 자 이 어으 에스큐엘의 특성은 뭐 그렇죠.

화자 1
06:16
관계 대수와 관계 해석 즉 관계 연산을 기초로 한 고급 데이터 언어고요. 이해하기가 쉽습니다. 오늘 배워보면 공부할 것도 없다. 너무나 쉬운 언어로 되어 있고요. 특히 대화 방법이다. 컴퓨터한테 이렇게 하라 저렇게 하라 대화식 지리언어로 사용하고요. 그 다음에 데이타의 정의를 하고 즉 데이타베이스를 정의하고 또 디비를 조장하고 또 제어하는 데이타베이스 언어의 모든 기능을 다 가지고 있죠. 데이타 데이터베이스 언어의 기능이 뭐고 정의하는 것 데이타 데이터를 정의하고 조작하고 제거하는 이 3가지 기능이 데이터베이스 언어의 기능이지 여는 이 3가지 기능을 모두 가지고 있는 게 SQL입니다. 좋죠. 그리고 코볼이나 씨 파스칼 다른 컴퓨터 언어와 언어의 삽입이 돼서 사용합니다. 그렇죠. 이렇게 다른 특정 언어에 삽입되는 DB를 참고로 인베디드 임베디더 에스큐엘이라 합니다. 그죠 임베디더 이런 특정 언어와 삽입되어서 처리되기도 합니다. 참고로 하나 있어요. 임베디드 내장 에스큐엘이다.

화자 1
07:15
이렇게 하고 역시 비 절차적 언어입니다. 그죠 남 프리시저 비 절차적 보통 프로그램 언어는 절차적 언어거든요. 에이는 으하고 비하고 요렇게 이거 없이 바로 질의에 의해서 퀴리 질의에 의해서 디비하는 데이터를 조작할 수 있는 언어다 이 말입니다. 그죠 비절차적 언어다 절차가 중요하지 않다 한방에 데이터를 어색해서 한다. 이 말이죠. 그래서 요런 특징을 가지고 있는 게 지금 배우고자 하는 뭐 에스큐엘이다. 이름 말씀이다. 알겠어요. 자 넘어가 봅니다. 간단간단하게 하면 된다. 실제로 여러분들 정무처리 기사 사안의 기사 이것만 알면 돼요. 이게 이것만 알면 다 끝나는데 하나씩 내가 다 해줄게 출제 이론에 출제 범위를 이것밖에 안돼요. 그건 다 끝났어 끝났지만 하나씩 보는 건데 일단은 어 음 정의와 조작의 분류 이거보다는 SQLSQL 스트라이식 퀴리 랭귀지에 분류 이렇게 하세요.

화자 1
08:13
예 요거 요거 이 수라치냉지는 크게 뭐 데이터 정의어 DDL과 데이터 조작업 데이타 메뉴 프레션 랭귀지 그다음에 데이타 컨트롤 랭귀지 크게 3개의 언어 집단으로 SQL 랭귀지는 구성이 됩니다. 즉 데이타베이스의 표준 언어죠 데이타베이스 언어의 3가지 기능을 다 포함하고 있는 스트락슈킬이 된 거지 에스큐엘이다. 이 말이야. 자 DDL은요, DDL에 포함되는 명령어 명령문은 3개밖에 없어요. 생성 크리에이터 이건 말하면 돼 새로운 데이터베이스 즉 테이블이나 스키마나 도메인이나 이런 새로운 걸 생성해주는 명령어 크리에이트 말 그대로 생성하라 창조하라 이 말이죠. 지리자 지리 질문식 대화식입니다. 그리고 변경은 엘트물입니다. 변경하라 엘트 변경이죠. 변경하라 기존에 있던 테이블 뭐 어떤 거 열값을 변경한다든지 행값의 변경하라 이런 뜻이고 제거는 뭡니까?

화자 1
09:10
어떤 테이블 특정 도메인 이놈을 제거 드랍 두랍이 떨어뜨려라가 아니고 제거하라 이런 뜻이 삭제 명령어요. 그죠 그래서 생성은 다른 말로 정의죠 정의 변경 삭제 이 3가지 명령문이 데이터 에스큐엘에 뭐 데이터 정의어에 해당한다. 실제로 이것만 알면 돼요. 이것만 어 근데 생성의 대상 정의의 대상은 뭐냐 스키마 도메인 테이블 인덱스 뷰 이 5가지다잉 테이블만 생성하는 게 아니고 스키마도 생성하고요. 도메인도 생성하고 도메인 알제 열값들의 집합 그리고 인덱스 어떤 검색을 위한 인덱스 값도 생성해내고 특히 뷰 가상 테이블 사용자 테이블도 생성하더라 이 말이야. 뒤에 보자 변경의 대상은 뭡니까? 도메인과 테이블이다. 그죠 도메인을 변경할 수 있고 테이블을 변경할 수가 있습니다.

화자 1
10:08
알겠나 그리 제거의 대상은 역시 똑같애요. 스키마 도메인 테이블 인덱스 뷰 그죠 그래서 변경의 대상만 요거 나머지는 다 같다 이 말이에요. 그죠 요것만 하면 돼 시험은 이것밖에 안 나와요. 에 그리고 데이터 조작업 데이터 매니플레이션 앵귀지는 뭐예요? 가장 중요한 검색 데이터베이스에 들어있는 특정 데이터를 질의 검색하는 명 용어가 뭐다 실렉트물 실렉터 텔렉트 또는 실렉트 멋대로 씨부리면 된다. 실렉터 프람 반드시 실렉트의 정도 그래서 프라임이다. 실렉트 프라임 외화 조건이죠. 외화조건 그러니까 실렉트문이 이제 데이터를 데이터베이스인 데이터를 조작해주는 것 중에서도 특정 데이터를 찾는 검색 명령문입니다. 가장 많이 쓰는 명령문이다. 실렉터 특정 테이블에서 어떤 특정 투풀을 생성해 내는 거죠. 실렉트 검색 실렉트 프라임이다.

화자 1
11:01
그리고 테이블에 새로운 행을 집어넣는 거 뭐 삽입 명령문은 뭐 인설트 인투입니다. 속으로 오니까 인투죠 실렉트 프라임은 그 테이블에서 붙으니까 프라임이고 인설트 왜 인투냐 속으로 테이블 속으로 테이블 속으로 인투입니다. 여기 시험에 나오지 삭제는요 테이블 속에 들어있는 특정 튜프를 삭제하는 거 딜리트 프라임입니다. 테이블로부터 무엇무엇을 삭제하라 딜리트 프라임 이제 갱신은 업데이트입니다. 갱신은 업데이터 특정 내용을 변경하는 거 테이블 속에 내용을 변경하는 거 그래서 데이터 조작 후에 이용되는 거는 뭐 검색 셀렉트문 삽입명령문 인설트 인투 셀렉터 프라암 갱신 업데이트 됐습니다. 요거 자 우리는 SK를 다 배우고 있다. 환상적이죠. 2시간 만에 에스큐엘을 다 배우고 있습니다.

화자 1
11:59
이런 놀라운 하나도 빠짐없이 그죠 그래서 에스큐엘을 에 예 딴 데서 이래 배워본 사람 내 강의 듣고 깜짝 놀란다 우째 저걸 2시간 만에 조지노 카면서 그죠 네 목이 안 좋아요. 우리 또 꼬꼬 피디님이 우리 보조 피디 그 도가 통하면 이게 원리가 터득대면은요, 남들 20시간 만에 가르칠 거 2시간만에 작살내는 거 어 뜨거운 가슴 좋아요. 그리고 이제 데이터베이스에 들어있는 데이터를 제어하는 데이터 컨트롤 랭귀지는 뭐겠냐 어 특 인제 DBA가 주로 이건 DBA가 사용하죠.

화자 1
12:37
DBA가 권한 부여 사용자한테 이 테이블을 사용해도 좋다는 권한 부여해주는 거 그랜트물 그랜트 권한을 부여하고 권한을 취소시키는 건 리복 리보크 취소문 그다음에 이제 나중에 트랜젝션 데이터베이스에서 활동하는 활동은 단위죠 트랜젝션 저 OS에서 프로세스하고 똑같은 개념의 프로세스 현재 수행 중인 현재 수행 중인 프로그램이 프로세스고 현재 데이터베이스에서 활동 중이고 액션 중이고 수행 중인 데이터베이스의 원자값을 트랜지오션이라 합니다. 하나의 속성과 트랜조션을 제어하는데 쓰이는 게 커미터 완료 명령문 롤백 예 비와 요 명령문 종요 명령문 그죠 나중에 합니다. 그래서 요런 것들이 자 시험에는 아 요 종류가 나오지 저 위에서 그죠 그랜트 문 리보 요렇게 하나의 상이고 커미터와 놀백이 하나의 상이에요. 그죠 자 요거 눈으로 한번 살짝 보죠.

화자 1
13:32
실은 정보처리 기사 산업기사의 어 정도는 이 정도만 해요. 그렇지만 이제 지금부터 하나씩 하나씩 실제 예절을 보면서 이거 배우면 뭐야? SQ를 다 배우는 거야. 자 보자 이 말입니다. 응, 예 자 자 전반적인 거 이야기 다 됐고요. 어 예 강의하기 참 좋죠. 여기 아주 뭐 교재가 잘 돼 있고 어 아주 좋습니다. 자 에스큐엘 정의어 DDL 데이터 데피니션 랭귀지 중에서 그죠 이 DDL은 다시 한번 정리해볼까 스키마 도메인 테이블 뷰 인덱스를 정의하거나 변경하거나 제거할 때 사용하는 언어이다. DDL은 그죠 DDL로 정의된 내용은 메타 데이터 땡그래미 메타 데이터가 되며 이게 뭐냐 메타 데이터는 뭐냐면은 메타 데이터 있네 정보 데이터입니다.

화자 1
14:28
메타 데이터는 데이타베이스 안에 들어있는 한 데이터에 대한 정보를 가지고 있는 데이터가 뭐다 메타데이터 정보 데이터라니까 이런 정보 데이터를 수록하는 게 뭐냐면 시스템 카달로그입니다. 이 정보 데이터는 뭡니까? 시스템 카달로그에 시스템 카달로그는 다른 말로 약간 차이 납니다마는 요건 데이타 디셔널이라고 나와요. 데이터 사전 데이터 디셔너리라고도 하고 또는 약간 의미는 다릅니다마는 데이타 디렉토리라 합니다. 디렉토리 같은 말이에요. 의미는 약간 달라도 시스템 카달로우 데이터 디렉토리라고 하지 요 정보 데이터를 기록하는 저장하는 게 시스템 카달로그지 즉 여러분들 뭐야? 우리가 자동차 살 때 카달로그 보면은 그 자동 내가 사고자 하는 자동차에 대한 정보를 다 알 수가 있죠. 자동차 카달로그 맞죠. 그러면 데이터베이스에 들어있는 모든 데이터의 정보를 가지고 있는 테이블이 뭐야?

화자 1
15:26
시스템 카드 그러니까 시스템 카달로그를 조사하면은 현재 데이터베이스에 들어있는 모든 데이터의 정보를 알 수가 있는 거 아닙니까 그렇죠. 요런 메타 데이터를 기록하는 게 뭐다 시스템 카달로그 다른 말로 데이터 디렉토리 창구라는 것입니다. 가끔씩 출제가 됩니다. 대개나 어쨌든지 이런 DDL의 형태는 타입은 3가지 크리에이터 생성시키는 거죠. 생성 생성은 다른 말로 정의죠 정의 테이블을 생성한다든지 5가지를 생성하죠. 변경 변경이죠. 변경 드랍문 삭제죠 그죠 예 정의 변경 그다음에 제거 삭제입니다. 그죠 계속 반복되는 이야기지 몇 분 반복됩니다. 시스템 카들로그 메타 데이터 좋습니다. 자 하나씩 함 볼까나 아 너무너무 쉬운 이야기야 자 크리에이터 스키마 스키마 스키마를 정의하는 명령문 스키마는 뭡니까? 우리 사용자가 볼 수 있는 저 뭐야?

화자 1
16:25
데이터베이스에 어 뭡니까? 구조와 제어 규칙을 명세완이라는 게 스키마라고 했죠. 그죠 사용자가 볼 수 있는 테이블이라 생각하면 돼요. 이런 스키마 스키마는 하나의 사용자 또 응용에 속하는 테이블과 기타 구성 요소도 그룹 주기 위한 것이 중요한 이야기는 아니고요. 스키마의 석배를 위해서 스키마 명과 해당 스키마 소유권자 이건 뭐 중요한 건 아닙니다. 표기 형식만 잠깐 보면 돼요. 크리에이터 스키마를 어떻게 하느냐 크리에이터 생성하라 정의하라 스키마 스키마 스키마 이름이죠. 스키마 이름은 유저 디파인 여러분들이 정해 놓으면 됩니다. 스키마 이름 예를 들면 요기 있네 대학교라는 스키마를 만들어라 어 스키마 그리고 권한은 어 어스리제이션 권한은 누구다 이 말 그 스키마 테이블에 대한 권한은 누구다 이 말이죠. 그죠 스키마랑 테이블의 이름이라고 보면 되겠죠. 자 예를 보자 이 말이야. 아이디가 홍길동인 사용자의 스키마 스키마 대학교라는 스키마를 정의하는 에스큐엘 문은 어떻냐 이거예요.

화자 1
17:20
크리에이터 생성하라 창조하라 뭐 스키마를 창조하라 어떤 스키마 대학교라는 대학교라는 이름의 스키마에 대한 권한은 누가 있다. 홍길동 아이디가 홍길동으로 들어오는 사람이 이 스키마의 권한을 가지고 있다는 거예요. 알겠나 그래서 요 잠깐만 뭐 시험은 여기까진 안 나옵니다. 근데 간혹 스키마의 표기 형식 쉽죠 크리에이터 그냥 스키마 하면 돼 그리고 스키마 이름 나오고요. 스키마 이름은 뭐다 유저 디파인드죠 여러분들이 사용자 즉 스큐엘 랭귀지를 가지고 스키마를 만들어내는 사람이 지정하는 거죠. 그리고 권한 사용자 아이디 홍길동이 이 권한을 가지고 있다. 이런 이야기죠 할 거 없죠 좋습니다. 크리에이터 스키마 좋고요. 그다음에 어 크리에이터 도메인 도메인을 정의하는 영역 도메인이 뭡니까?

화자 1
18:10
여러분 도메인 하나의 테이블에서 하나의 속성 학번이면 학번 하나의 속성이 취할 수 있는 동일한 타입의 원자값들의 집합이 도메인 이제 그죠 학번 학번 속성에 학번이 뭐 001부터 1002 그러면 고 도메인은 학본 도메인은 데이터는요 100개죠 100개 요 도메인 에 하나의 속성이 가지고 있어 아주 어 속성의 값들이 집합이죠. 하나의 속성 원자값들의 집합 원자값은 속성이니까. 어트리뷰터죠 어트리뷰터 ATTRI 빅뮤티 어터리뷰터 너무나 잘하는 이야기 자 정의된 도메인은 다른 테이블에서도 그 도메인 맞죠. 도메인 중요한 거 아니죠. 자 표기 양식을 한번 보자 역시 만들어내라 뭐 도메인을 만들어라 그리고 도메인명은 여러분이 쓰고 데이터 타입 타입이요. 데이터 타입 있죠. 그죠 이게 정수냐 실수냐 문자냐 뭐 이런 거 뒤에 나옵니다. 그리고 디포트 기본값 여기는 이건 생략 요렇게 쓰는 건 생략 가능한 거예요. 원래는 크리에이터 도메인 도메인 명만 있으면 됩니다.

화자 1
19:07
요거 요런 것도 생략할 디포트 기본값 그다음엔 컨센트레이트 제약 조건 도메인의 제약 조건을 이게 뭐 제약 조건이 있는 거죠. 체크 범위 값인데 체크 범위값 범위 값이에요. 그래서 요런 양식인데 여러분 크리에이터 도메인 도메인명 데이터 타입 요 정도만 알면 되는 거고, 체크라는 구가 들어간다는 거 체크 이 범인값이 뭐 와이냐 노냐 남자냐 여자냐 요건지 한번 보죠. 그래서 데이터 타입은요, 에스큐엘에서 지원하는 데이터 타입 있죠. 데이터 타입 이 데이타가 숫자냐 문자냐 뭐 이런 거예요. 뒤에 나옵니다. 요거는 뒤에서 내가 보고 데이터 타입은 고거 들어가고요. 기본값은 데이터를 입력하지 않았을 때 자동으로 입력되는 값 디포트값 기본적으로 지정되는 값이죠. 너무나 쉬운 이야기고 그다음에 예를 들어보자 성별을 남 또는 여와 같은 정해진 1개의 문자로 표현되는 도메인 섹스를 정의하는 에스큐엘 문을 만들어라 이 말이죠. 그죠 요거 보고 그러면 크리에이터 도메인인데 도메인 매우 뭐다 섹스다 이 말이에요.

화자 1
20:06
섹스인데 데이타 타입은 뭐다 문자죠 캐릭터 문자 1자죠 이게 문자 1자 섹스라는 도메인에 문자 1자가 들어가는데 그 디포트는 뭐예요? 집어넣지 않으면 내가 특정으로 지정하지 않으면 남이라는 글자 남자 남이라는 글자가 지정돼 있고 여자일 때는 여를 써라 안 쓸 때는 남이 지정된다는 거지 그리고 제약 조건은 뭐냐 제약 조건은 뭡니까? 어 제약 조건은 이제 체크를 하는데 뭐 요 안에는 이 섹스라는 어트리뷰티에 들어가는 제약 조건은 남아이면 여다 이 말이야. 남아이면 여다 이 말이지 그지 남 아니면 여 남자라는 글자 아니면 여자 딴 거 뭐 남자 여자 외에 아들 이래 나오면 이거 뭐야? 이거는 뭐요 도메인 무결성에 위배되는 거예요. 에러다 이 말이죠. 자 그리고 남녀 외 딴 데이터가 들어가는 건 이게 뭐다 이런 이 제약 조건을 이 컨센트레이트 제약 조건을 위배하는 게 뭐야?

화자 1
21:02
무결성 중에서도 도메인 영역 무결성 도메인 무결성에 위배된다는 겁니다. 알겠나 그래서 뭐 그렇게 중요한 건 아니고요. 크리에이터 도메인 도메인 도메인을 생성하는데 섹스라는 이름으로 생성하는데 그 섹스라는 항목이 들어가는 도메인의 체크값은 뭐다 나날머니다. 되겠어요. 디포트는 남이다. 이 말입니다. 됐지 예 어려운 거 아닙니다. 우리가 어제 무게성에 대해서 배웠죠 데이터베이스에서 정확한 데이터가 들어가야 되고 오류 없는 데이터 그 성질이 뭐다 무게성 이제 데이타베이스의 잘못된 데이타 무게성에 위배돼 버리면 그 데이터는 가치가 없는 거죠. 가짜 정보는 모르는 것보다 못 해요. 잘못된 거는 이 무계층 중에 우리가 뭐 배웠노 참조무계층 생활하라 프라이머리 퀴즈 나 프라이머리 키즈 낳는 그다음에 그 안에 결체 무결성 프라이머리 키즈는 안 누리고 참조무결성 생각나죠. 그러고 우리 영역 무결성이라 했죠.

화자 1
21:59
도메인 무결성 바로 이야기죠 아까 됐습니다. 도메인 무결성 어 그 범위 안에 없는 값들이 들어가면은 도메인 무결성에 유배되기 때문에 에러다 이 말입니다. 자 참고로 에스큐엘 랭귀지에서 지원하는 기본 데이터 타입이 어떠냐 데이터 형태가 어떻냐 자 정수 정수 데이터는 이제 아이엔피 인테저 인테저고 그죠 인테즈는 4바이트 4바이트니까 32비트 정수를 의미하고 스몰 인테주어라는 건 뭐다 2바이트 정수 값을 의미합니다. 정수 데이터는 뭐야? 아이엔티나 스몰 아이엔티로 표현합니다. 그래서 아이엔티는 32비트 정수 값이고 스몰 아이엔티는 뭐다 2바이트 그냥 눈으로 살짝 보면 되고 플루트 실수 값 뭐로 표현한다. 데이터 타입은 플루트 플루트로 표현하고 또는 리을이라는 것도 쓰고 또는 더블 프리전이라도 씁니다. 플루트 플루트 뭐 카면 이거야. 정수 데이터다 이 말이죠. 또는 니의 뭐 카면은 정수 되어 있죠.

화자 1
22:55
실수 데이터라는 거고, 더블 프리즌은 뭐요 배정도 64비터를 의미하는 거예요. 64비터 64비터의 실수값을 의미합니다. 실수값이고 프로트와 니얼은 32비트의 실수값을 의미합니다. 그죠 참고로 나눠 놓으시고 어 실수 데이터 아니죠. 우리 앞 시간에 배웠잖아. 이거 어떻게 표현해야 돼요. 부오비터 그다음에 지수부 가속으로 요렇게 64비터 그다음에 요거는 반 정도 반 정도 고용배 정도죠 반 정도 예 요거는 더블 프리즈는 배 정도 생각나죠. 옛날에 요거는 뭐야? 단 정도 단 정도는 32비터 방식이다. 이런 거고, 형식화된 숫자 하는 게 뭐야? 어 뭐 이건 중요한 건 아닌데 이제 아이 점 뭐야? 아이 전체 자리수 점 이게 예 제이는 소수부자릿수입니다. 그죠 형식화된 숫자 해가지고 이게 대시머리라 그죠 중요한 건 아니고요. 고정 길이 문자 캐가지고 문자는요 캐릭터랍니다.

화자 1
23:52
캐릭터 캐릭터 하면 문자 5자리 이 말이죠. 캐릭터 SHAR로 표현하고요. 가변 길이는 뭡니까? 어 밸리 유브 캐가 언 밸리 오브 캐릭터 캐 가지고 예 가변 길이 문자도 고정 길이냐 가변 길이냐 이렇게 나타내는 거고요. 어 비트는 뭐야? 고정 길이 비트 열은 VOLIUV 비트 앤 날짜는 데이터 그다음 시간은 타일 데이터라는 거 데이터 뭐 15 이러면은 15일 이래 의미하죠. 타임 뭐 타임 식 하면 10시 이렇게 이야기하는 것이 되겠나 그래서 요런 데이터 타입을 SQL에서는 지원하더라 그죠 그래서 다시 한번 보자 정수 열이 가면 정수 데이터를 아이엔티와 스몰 아이엔티로 표현하고 실수는 요것만 알면 됩니다. 그죠 형식화된 이거는 별 필요 없고요. 문자는 요거 가변 길에는 요거 비트 요거 됐죠 됐습니다. 요 정도만 데이터 타입을 아시면 됩니다.

화자 1
24:47
또 이게 다다 에스큐엘에서 지원하는 데이터의 형태 요런 거로 데이터를 데이타의 타입을 지정하더라 이 말입니다. 문자냐 숫자냐 숫자 중에서 정수냐 실수냐 이런 뜻이지 됐습니다. 아 좋아요. 자 그다음에 뭐 크리에이터 테이블 됐죠 테이블을 정의하는 거 생성해주는 명령어 형식은 뭐다 크리에이터 테이블 테이블명이 나오고 이제 요거야. 속성 그 테이블의 속성명 데이터 타입으로 쭉 나오는데 프라이머리 키는 뭐고 유니크 대체 키는 뭐고 포링키는 뭐고 그리고 뭐 체크는 조건식이 있고 이걸 좀 생략 가능하지 여러분 아는 거는 크리에이터 테이블 테이블 요것만 체크하면 됩니다. 알겠어요. 그래서 나머지는 쭉 읽어보면 되고요. 자 프라이머리 키는 알죠 그죠 기본키를 뭘 하는 거냐 기본 키를 뭐라는 거고, 유니큐는 기본 키를 제외한 후보 키가 유니크죠 대체 키는 뭐라 하는 거고, 포링키는 어떤 거고, 그다음에 체크 속성값에 대한 제약사항을 지정합니다. 그렇죠.

화자 1
25:45
그래서 이거 다 외울 필요 없다. 필요 없고 크리에이터 테이블 테이블명 이것만 알면 돼요. 그리고 요런 옵션들이 있다는 거 옵션들이 옵션들이 있는데, 눈으로 살짝 눈으로 살짝 쿵 보면 안개할 필요 없다. 이거 어허 이런 게 있구나 이러면 된다. 그래서 알 필요 없습니다. 우리가 전문적인 실무를 하는 게 아니니까 기사 이론에서는 실제로 시험에 내가 요것만 가르켜주면 돼요. 하지만 이왕이면은 형식의 모든 걸 잡아내는 거죠. 그래서 나머지는 옵션이다. 이거는 생략 가능한 거거든요. 옵션들 옵션이라면 옵션 눈으로 봐놔라 이 말입니다. 암기도 하지 마라 1번만 봐 놓으면 됩니다. 됐습니다. 넘어갑니다. 예를 한번 보자 예를 자 어떤 거 이름 학번 전공 성별 생년월일로 구성된 학생 테이블을 만들어라 정의하는 에스큐어를 작성해 봐라 이런 거예요. 학생 테이블을 단 이름은 느리 올 수 없다. 그럼 이름이 느리 올 수 없다. 카는 이름은 뭐다 피케이다. 알려주는 거죠.

화자 1
26:40
올 수 없고 학번은 아 이름은 느려올 수 없고 늘 이름은 느리면 할 수 없고 학번을 기본끼리 했네 그죠 학번을 기본끼리 해라 이 말이네 피케이고 이름은 늘 너잇값을 가지면 안 된다네요. 이름 반드시 들어가는 조건이 있고 전공은 학과 테이블에 학과 코드를 참조하는 외래키로 사용되면 아 전공은 외래키로 사용되는구나. 생년월일은 뭐 1980년 1월 이후에 데이터마저 뭐 1980년 이후 이전은 뭐 사람도 아이가 그냥 80년 이후만 저장해라 이 말이네 그럼 나는 사람도 아이가 아 나는 80년생 이제 나이 29이다. 원래 좋습니다. 자 그러면 이 명령문을 어떻게 하나 이 말야 이렇게 크리에이터 테이블 학생 테이블을 만드는데 뭐 학생 테이블을 만들어라 이 말 아닙니까 이거 다예요. 그런데 뭐 이름은 이름이라는 속성은 자 속성은 뭐야?

화자 1
27:30
이름 학생 테이블 밑에 이름 학번 전공 성별 생년월일 어허 이 5가지 속성이 있는데, 자 그럼 이 명령을 위해서 컴퓨터를 어떻게 만들어보자 한번 만들어 볼게 테이블이 만들어지네 그 테이블 이름을 뭘 알아 크리에이터 테이블 만들어라 어떤 학생이란 이름으로 이름의 테이블을 만들어라 릴레이션을 만들어라 이 말은 아니고 근데 거기에 속성은 뭐 있단 말이고 속성은 5개 속성이네요. 뭐 이름이라는 속성 그죠 그다음에 학번이라는 속성 여러분들이 SQL 언어로 요렇게 명령을 내리면 컴퓨터를 요런 테이블을 만들어주는 거예요. 뭐 SQL 명령문에 의해서 오케이 어 그리고 어 뭐야? 전공이라는 속성 전공이라는 속성 그리고 성별이라는 속성 성별이라는 속성 그다음에 마지막 뭐고 생년월일 그렇죠. 생년월일 길기도 길다 생년월일이라는 속성 이렇게 만들어주는 거예요.

화자 1
28:27
되나 근데 이름을 만들 때 뭐 이름은 15자리 어 가변 가변 길이 문자네 그죠 15자리로 만들어라 15자리로 최대 값 만들고 아 15자리 안에서 이름을 표현해라 이 말이에요. 이름 데이터는 변한다. 이 말이에요. 이름 승 자도 있을 거고, 노 자도 있고 15자리 문자급이고 이름 그러면 난 늘 반드시 뭔가 채워져 있어 빈값은 들어가면 안 된다는 거죠. 그러면 여기에 인제 뭐 JJH 이름이 더 하지 15자리 정해놓고, 그다음에 홍길동이도 들어갈 끼고 막 들어갈 거 아니야. 이 테이블에 어잉 그다음에 이름은 선우원숙 누구가 어디서 많이 되는데 이름이 긴 이름도 있을 끼고 동그래미 이런 이름도 있디 우리 여직원 이름 중에 동그래미가 있습니다. 동그래미 진짜 다 이름이 동그래미예요. 뭐 이래 이름이 있고 또 외자도 있어있죠. 전철 요즘은 요즘 사건 많이 치는 이철 이철이가 뭐 이래 있겠죠. 여기 이제 데이터들 쭉 들어가겠죠. 이름 만들어지는 거죠.

화자 1
29:25
그다음에 학번 전공 성별 만들어지는데 학번은 15자리고 전공은 또 20자리고 20자리 성별은 섹스 어 성별은 섹스니까 이제 체크값이 남자아이면 여겠네 생년월일은 데이터 데이트로 넣어라 이 말입니다. 그리고 프라이머리 퀴즈를 뭘 알아 학번 어 학번을 PK로 해라 이 말이야. PK 그리고 포린키는 뭡니까? 전공 어 전공은 뭡니까? 포링키가 된다. 이 말이에요. 근데 이 포링키는 뭐야? 레퍼런스 학과 코드 뭔가 이거 외에 또 무슨 코드가 있겠노 학과의 학과라는 테이블에 뭔지는 모르겠는데 이게 학과 코드가 있어요. 학과 코드 학과 코드를 전공으로 참조한다는 거요 어 그럼 이 테이블에서 피케이는 학번이고 전공은 뭐다 포링키요 그러면 이 테이블에서 이 학과 테이블 참조할 때 무슨 키로 오케이 전공이라는 포링키로 이 테이블을 참조하겠다는 겁니다. 그죠 근데 이 전공이라는 이 포링키가 학과 테이블에 학과의 학과 코드라는 이름으로 매핑 하겠다. 하는 겁니다. 이해되나 요런 거예요.

화자 1
30:25
이런 테이블과 테이블을 연결하는 게 데이터베이스 아니야. 오케이 좋습니다. 그래퍼런스 아까 코드 그리고 체크는 뭡니까? 생년월일은 어떻게 기준이 1980년 1월 2일 이 1월 1일보다 같거나 크다 이게 같거나 크다 그죠 어 근까 1월 1일부터 집어넣어라 그러니까 1980년 1월 1일 뭐 이렇게 나머지는 넣지 마라 이 말입니다. 이런 체크값을 두는 거죠. 그럼 요 조건에 의해서 이 테이블이 만들어지고 이 테이블에 들어와 있는 데이터는 이 옵션에 의해서 데이터들이 쭉 15자리 위배하면 안 되고 학번도 15자리고 전공은 몇 자리라 해서 20자리로 들어가고 성별은 남자 아이면 여자고 그죠 남자아이면은 여자고 어 뭐 그다음에 생년월일은 80년 1월 이후부터 들어가겠죠. 에 79년 81년 이런 신세대들이 들어가겠습니다. 만들었습니다. 뭐로 크리에이터 테이블 명령문으로 되겠나 여러분들이 프로그램으로 요렇게 SQL 언어를요 컴퓨터한테 명령을 주면 컴퓨터는 요런 테이블을 만들어냅니다.

화자 1
31:22
요 조건에 맞는 알게 나 여러분의 시키는 대로 하는 테이블을 만들어내는 크리에이터 테이블 됐나요? 여러분 직접 사용 안 해도 좋습니다. DBA는 이런 거 다 잘 사용하겠죠. 이제 이런 명령문으로 프로그램을 즉 SQL 언어를 사용할 수 있으면은 여러분은 컴퓨터한테 직접 데이타베이스를 만들어라는 명령을 내릴 수 있는 거 그죠 이런 걸 배워야 되겠지 그래서 인제 정보처리 기사 이론에는요 여기까진 안 나옵니다. 여러분 아 크리에이터 테이블 테이블명 이런 옵션들 속성 됐나 프라이머리 킥 포링킥 체크됐습니다. 아 깔끔하게 하네 그다음에 커리에이터 뷰 가는 게 뭐야? 뷰 지금 하나씩 나오는 거야. 왜 이런 뷰는 뭐고 여러분 우리가 스키마 중에서 외부 스키마 외부 스키마 또 다른 말로 이건 뭐다 서버 스키마를 뷰라 하죠.

화자 1
32:21
어 가상 테이블이죠. 가상테이블 가상 릴레이션 에 뷰 우리 사용자가 볼 수 있는 테이블 그죠 외부 스키마 서브스키마 붓 뷰 뷰는 하나 이상의 테이블로부터 유도되는 이름을 갖는 가상의 테이블을 뷰라 합니다. 버철 테이블로써 크리에이터 뷰라는 명령으로 뷰를 정의하는 명령문이다. 알겠죠. 왜 가상테이블이고 원래 웨이브 스키마 비우는요 존재하지 않아요. 실제 존재하는 거는 뭐야? 실제 테이블 있죠. 테이블 예를 들면은 이 테이블에 여러분 이거 봐 학번이 있고 이름이 있고 전공이 있고 여기에 생년월일이 있답시다 있어요.

화자 1
33:03
그러면 자 이 실제 테이블에서 나는 학번하고 이름만 따로 보고 싶다 그러면 여기에 학번하고 여러분들 이름만 요렇게 일시적으로 내가 실제 큰 테이블에서 내가 필요한 데이터만 딱 해 가지고 임시적으로 만들어지는 테이블 요놈이 뭐다 뷰예요. 뷰 내가 볼 수 있는 거 가상테이블입니다. 존재하지 않아요. 실제 실제 물리적 테이블에서 내가 원하는 정보만 엑기스 추출해서 내가 필요한 데이터만 테이블에서 보이는 테이블 가사 그리고 내가 보고 난 뒤에 없어져 버린 테이블 이게 뷰예요. 그니까 사용자가 느끼는 테이블입니다. 알겠나 해서 요 가상테이블이다. 요런 가상테이블도 만들어내죠 무슨 명령문으로 크리에이터 뷰로요 실제 이렇게 명령문을 다 써야 되는데 우리는 그냥 클릭으로만 하요 어 사용자는 클릭이고 DBA는 여러분 클릭하면 뷰가 보일 수 있도록 요런 명령문으로 다 만들어 놨겠죠.

화자 1
34:00
그 뷰를 이해되나 프로그래머나 DBA는 이거 만드는 사람이고 우리는 만든 거 그냥 클릭으로 보는 사람 아니야. 어 사용자 사용자 어 사용자하고 나는 개발자 알겠나 이런 개발자가 많이 존재해야 됩니다. 우리나라에 그 말이죠. 사용자만 해봐야 안 되죠. 사용자는 3800만 명이에요. 지금 우리나라 인터넷 사용 인구가 어 그런데 개발자는요 이 100만 명도 안 되니까. 이게 무슨 난리고 그죠 그래서 그런 이야기 그래서 크리에이터 뷰 뷰 이름 또 이 뷰라는 테이블에 들어가는 또 속성 이름들 그다음에 에저 시렉트 뭐 이래 있는데, 크리에이터 뷰만 아시면 됩니다. 예 그래서 요걸 한번 읽어보시고 중요하지는 않고요. 자 예절을 함 볼까 실제 고객 테이블에서 주소가 안산시인 고객들의 성명과 전화번호를 안산고기라는 뷰로 임시 임시뷰로 정의하시오. 이 말입니다. 실제 고객테이블에는 인제 여러분 뭐야? 어 그 많은 게 들어있는데, 그 고객테이블 실제 고객 실제 테이블 이름은 뭐야? 고객 테이블 있죠.

화자 1
35:00
고객테이블 고객테이블에 이제 뭐 많은 값들이 있겠죠. 쭉 있습니다. 그중에서 성명이 있고 주소가 있고 전화번호가 있고 또 딴 것도 있는데, 이 중에서 나는 뭐야? 어떤 뷰를 만들어라 어 전화번호를 안산 고객이란 뷰로 정의해라 그죠 안산뷰 안산 고객 왜 안산 고객이고 안산 고객 이라는 테이블을 일시적으로 만들어라 어 이 명령이 이거예요. 자 이게 뭐야? 크리에이터 뷰 뷰 이름은 뭐다 안산 고객 그럼 이 안산 고객은 뭐다 뷰가 되겠죠. 뷰 어 가상 테이블이 돼 가지고 고객 테이블에 집필요한 거 성명과 전화번호 성명과 전화번호만 가져오죠 성명과 전화번호만 가져오죠 가져와서 가상적으로 만들어졌다 그죠 그리고 에즈 실렉터 성명 전화번호 프라운 고객 테일러부터 이 고객 테이블로부터 이 뷰를 만들어라 이 말입니다.

화자 1
35:53
그리고 외화 주소가 단 안산시인 조건 어떤 조건 주소가 안산시인 그러면 고객 중에서 안산시 주소가 아산시로 돼 있는 사람만 여기 다 땡긴다는 거예요. 이해되나 요렇게 가상 테이블을 만드는 게 크리에이터 뷰입니다. 크리에이터 뷰예요. 다 해 주네 내가 지금 크리에이터 뷰 되겠나 예제만 보시면 되겠습니다. 자 그다음 볼까요? 좋아요. 크리에이터 인덱스 요거는 인덱스는 검색을 빠르게 하기 위해서 만든 보조적인 데이터 구조이며 크리에이터 인덱스를 정의 만들어낸다 인덱스를 왜 만드는 인덱스 테이블은 검색을 빠르게 합니다. 그죠 그래서 검색을 위해서 인덱스 테입을 또 뭐로 만들 수 있다. 크리에이터 명령문으로 그죠 자 형식은 크리에이터 복잡한 거 채워뿌고요. 이거 생략 가능한 건 옵션이죠. 옵션은 크리에이터 유니크 대체 키입니다마는 뭐 크리에이터 인덱스 인덱스명 하면 돼요. 보면은 뭐 유니키는 어 한번 유니크 한번 보고요.

화자 1
36:52
그 정렬 여부 인덱스를 인덱스 값을 뽑아내는데 정렬을 ASC 하면 어센딩 소트 오름차 순으로 정렬시켜서 테이블을 만들고 인덱스 테이블을 만들고 DSC는 합니다. 디센딩 내림차 순으로 알죠 어센딩 오름 잡으면 알죠 그러면 1 2 이렇게 하는 거고, 어센딩 디센딩은 뭐야? 이렇게 내려가는 거 알겠죠. 클러스터는 됐고요. 자 요거 한번 보자 요 잠깐 보자 고객 테이블에서 유니크한 특성을 갖는 고객번호 속성에 대한 내림차순으로 정렬하여 고객번호 인덱스라는 이름으로 인덱스를 만들어 그러면 크리에이터 유니크 유일한 인덱스다 이 말이죠. 유니크 인덱스 인덱스는 뭐다 고객 번호를 인덱스로 하라는 거죠. 그리고 이제 그 고객을 뭐다 고객번호가 내림차순으로 그 고객번호만 인덱스 테이블을 만드는데 거기에 들은 데이터는 어떤 식으로 내림 차순으로 큰 것부터 작은 걸로 테이블을 구성하라 이런 뜻입니다. 중요한 건 아니다.

화자 1
37:46
그래서 자 이 크리에이터 명령문이 이제 테이블 인덱스 도메인 뷰 뭐 이런 걸 만들 수 있는 스키맘 그죠 5가지를 어떤 개체를 만들 수 있는 게 그레이트 문입니다. 하나씩 다 봤다. 그 다음에 엘트문입니까? 엘트문 아니 알트문 쉬워요 엘트문은 뭐냐 변경이죠. 테이블에 이제 이미 정의된 테이블을 변경해 주는 거 리뉴얼 해주는 거 변경해 주는 거 우리가 인테리어로 이미 집을 만들어 놨는데 이걸 다시 내가 좀 바꾸는 거 아 마음에 안 드는 테이블을 잘못 만들었는 거야. 그래서 뭐 빠졌다든지 이럴 때 변경해주는 명령문이 뭐다 엘트 엘트 테이블 엘트 테이블입니다. 엘트 테이블 표기 형식은 엘트 테이블 테이블 이름 그리고 에드 동그래미 또 엘터테이블 나머지 다 필요 없습니다. 엘트 동그래미 또는 드랍 동그래미 그죠 엘트 애들은 새로운 속성을 추가하는 거예요. 하나 빠졌는 거예요.

화자 1
38:41
속성값이 테이블을 이래 만들었는데 테이블을 이렇게 만들어 가지고 한 속성을 학번 이름 뭐 주민번호 만들었는데 아 전공이 빠졌어 요럴 땐 뭐냐 엘터 엘트 애드를 씁니다. 엘트 애드 그럼 요놈 속성이 추가가 되겠죠. 되겠나 어 그리고 또 엘트 엘트문은 뭐냐 속성의 묵시적 값을 변경합니다. 디포트 되어있는 값을 변경해버려 예를 들면 내가 아까 성별을 남자로 디포트 했는데 이제 여자로 하고 싶다. 했을 때 요건 액트로 변경해 주는 거죠. 속성값을 변경해 주는 거고, 드랍은요, 속성을 제거하 어 내가 만들 때 학번 이름 주민번호를 만들었는데 아 이 주민번호가 필요 없어 주민번호 속성을 없애 버려야 되겠다. 뭐 엘터 드랍입니다. 되겠나 엘터 테이블 테이블명 쓰고 삭제하고 싶은 속성명을 쓰면 됩니다. 됐나요? 예 좋아요.

화자 1
39:31
자 고는 뜨시고 자 얘를 함 볼까 학생 테이블에서 최대 3문자로 구성된 학년 속성을 추구하는 에스큐엘보다 쉽죠 엘터테이블 학생테이블에서 뭐 학년과 학년 학년인데 뭐 3억짜리 문자 3억짜리 더 갈 수 있는 학년이라는 속성을 만들어라 이 말입니다. 추가하라 이 말이죠. 그래서 엘트 애드입니다. 되겠나 자 엘트 에더 엘트 엘트라 됐죠 되나 속성을 추가 속성의 변경 속성을 삭제됐습니다. 할 거 없데이 엘트 문은 요겁니다. 예 좋고요. 그 다음에 드라마 문은 뭡니까? 이제 스키마라 만들어 놓은 스키마나 또 필요없는 도메인 테이블 뷰 인덱스를 뭐 삭제 드람 삭제하는 거예요. 아까 그리 히트는 만드는 거고, 또 이 드랍은요, 이미 만들어져 있는 거 필요 없는 건 뭐 삭제시키는 것이 쉽죠 그래서 표기 양식을 간단하게 보죠.

화자 1
40:27
드랍 스키마 스키마를 삭제하고 드랍 도메인 도메인을 삭제하는 기구 DRAP 가상테이블 뷰를 삭제하는 기구 인적성 테이블 삭제하는 거 됐나 끝났습니까? 공부할 거 없고요. 끝났고 그다음에 요거는 조금씩 한번 봐요. 요거 약간 어려우신데, 여기에 구가 옵션으로 뭐 들어갈 수 있냐 하면 캐스케이트라는 구와 리스트릭이라는 구가 들어가요 자 캐스케이트는 뭐야? 내가 지금 어떤 도메인을 삭제하는데 이 내가 삭제한 대상이 지금 참조 중에 있어 사용 중에 있어 그러면 캐스케이드를 써버리면 현재 활동중인 도메인까지 삭제하라 이 말입니다. 활동 중이라도 수행 중인 수행 중인 사항을 예를 들면 뭡니까? 제거하라 수행 중이더라도 제거해 버리라 계속 헤이드는 상관없다. 그리고 리스트릭은 금시상 다른 게이처가 제거할 개체를 참조 중일 경우 참조 중이더라도 참조 중이면 제거가 안 돼요. 이 뭔 말인지 알겠나 이거는 수행 중이면은 제거가 안 돼요.

화자 1
41:25
수행 중이면 제거를 할 수 없는 거예요. 수행이 끝나야 제거되는 게 미스테릭을 써버리면 삭제를 하는데 뭐다 그 삭제 대상이 활동 중이면은 뭐 삭제가 안 된다는 거야. 그니스트릭을 써버리면 금지 조건 지우지 마라 어 이놈 사용 다 하고 죽이더라도 밥 다 먹고 죽이라 이 말이야. 그런데 캐스케이드를 써버리면 밥 먹더라도 죽여버려 이 말입니다. 됐나 요래 설명해도 틀리면 안 되겠죠. 캐스케이드 밥 먹고 있어도 죽여버려 요거는 밥 다 먹고 죽이라 이 말입니다. 됐지 그래서 요런 구 여러분 시험에 나올 수가 있습니다. 그죠 그래서 요거 한번 봐봐라 학생 테이블에서 모아봐 요거는 뭐야? 드랍 테이블 학생 테이블을 지우라 이 말이죠. 그런데 학생 테이블에 사용 중인 캐스케이드 사용 중이더라도 다 지워버려 그러면은 뭐 사용 중이니까. 학생 테이블 학생 테이블에 모든 게 삭제돼 버리는 거죠. 그죠 드랍 테이블 학생 캐스케이드 뭔 말인지 압니까 좋습니다.

화자 1
42:21
어렵지 않죠 그래서 여러분들 요렇게 자 방금 봤는 것들이 우리가 뭐다 오케이 바로 SQL 이라는 데이터베이스 관계 데이터베이스의 표준 언어다 SKL이 STRAPPURE 퀴리 랭귀지의 첫 번째 명령어 뭐 DDDLB아스입니다. 데이터를 정의하는 정의어죠 이 DDL은 뭐가 있노 크리에이트가 있었죠. 또는 뭐고 에이트가 있었죠. 그 다음에 뭐가 있노 드랍이 있었습니다. 그죠 크리에이터의 대상은 뭐다 5가지 스키마 다시 한다. 도메인 테이블 뷰 인덱스입니다. 알겠나 엘트는 주로 테이블에만 하는 거예요. 엘트는 테이블을 추가합니다. 테이블에 어떤 속성을 추구합니다. 엘트 애드죠 테이블에 어떤 속성을 제거합니다. 엘트 드랍이죠. 테이블의 어떤 속성 값을 변경 합니다. 엘트 엘트죠 됐나 주로 테이블 많이 하고 그 다음에 삭제는 뭡니까?

화자 1
43:18
역시 스키마 도메인 뷰 테이블 인덱스를 삭제해 주는 명령이 뭐 드랍이죠. 그런데 뒤에 캐스케이드구나 리스트릭 구 이야기한다. 캐스케이트는 활동 중이더라도 삭제하는 거고, 리스트릭은 활동 중이면 삭제가 안 되는 겁니다. 댓 니껴 아주 좋습니다. 자 뒤에 없죠 뒤에 있습니까? 함 넘겨보죠. 혹시 있나 예 없습니다. 자 오늘 또 여러분들 깔끔하게 정리했죠. 남들 몇 달 배울 걸 이거 무슨 말이고 아주 간단하게 실제 여러분들 SK 이거 다 하다 이런 거 인제 여러분 뚝딱뚝딱 편집기로 에스큐엘 깔아 가지고 하면 돼요. 여러분 컴퓨터의 데이타베이스를 만들고 데이타베이스 지우고 변경하고 다 할 수 있습니다. 어 할렐루야 그죠 환상적이죠. 실무에서 해보면 되는 거겠죠.

화자 1
44:08
그죠 쉽다 그죠 그래서 에스큐엘 문제는요 이렇게만 공부해 놓으면 진짜 부처님 손바닥 젤리츠 손바닥 뭔 말인지 알겠나 그래서 여러분 정리를 잘해 주시고 그래서 오늘 에스큐엘의 디디엘에서 배웠구요. 잠시 한 10분 쉬고 나머지 언어 에스큐엘을 다 정리하도록 하겠습니다. 됐죠 잠시 쉬고 10분 뒤에 다시 돌아오겠습니다.

728x90
반응형
posted by 아이윤맨
: