study

[SQL] Chapter 01. DBMS

yz 2022. 6. 14. 16:50
/*
1. DBMS (DataBase Management System)
  - 대용량의 데이터 집합을 체계적으로 구성하는 시스템
  - 사람이 만들어내는 정보(SNS, 물건 구입내역, 업체의 인사정보 등)을 데이터화하여
    저장하고 체계적으로 관리할 수 있도록 도와주는 시스템

  - 과일가게 관리 프로그램에서 발생하는 과일의 주문내역 및 거래내역, 금액 등을 데이터화하여
    별도의 파일 공간에서 관리
  - 응용 프로그램(Application)과의 연동 및 네트워크 상의 모든 사용자가 공유함으로서 
    보다 더 유용하게 (데이터)를 활용할 수 있다.
	대표적인 DBMS 유형으로는 (MSSQL, Oracle, MySql, Excel 등이 있다.)

2. SSMS ? (MicroSoft Sql Server Management Studio)
  - Mssql 데이터 베이스를 유용하게 관리할 수 있도록 도와주는 Tool

3. SQL ? (Structured Query Language)
  - DBMS 와 사용자가 원하는 데이터를 관리할 수 있도록 주고받는 DBMS 언어
    Ex) 프로그래밍 언어로는 JAVA, C#, ...
	거의 모든 DBMS 가 표준 SQL 문법을 따른다.
	각 DBMS 만의 특별한 문법이 존재하지만 차이는 크지 않다.

4. 데이터 베이스 강의의 목적
  - SSMS 툴을 이용해 SQL 언어를 사용하여 MSSQL DBMS 에서 데이터를 관리하는 방법을 학습
*/

/*
1. 테이블의 생성
  Table 이란 ?
  행과 열의 위치 정보를 이용해 같은 정보를 가진 데이터를 그룹화하여 저장하는 DBMS 파일공간 단위
  SSMS 에서는 엑셀의 시트처럼 표 형식으로 보여주어 관리자가 눈으로 보면서 효율적으로 데이터를
  관리할 수 있도록 도와준다.

  - 열 (=컬럼 =필드)
    . 열 이름은 테이블 내에서 중복되지 않고 고유해야 한다.
  - 행 (=로우 =레코드)
    . 등록될 데이터를 담는 곳, 각각의 ID, NAME, ADDRESS 정보가 모여 하나의 행을 이루며 
	의미있는 데이터를 구성한다.
  - 데이터 형식
    . 열에 등록될 데이터의 형식(문자, 숫자, 소수, 파일 등)
  - 기본키 열
    . 각 행을 구분하는 유일한 열을 말한다.
	. 이름과 주소는 같을 수 있지만 고객의 ID 는 절대로 중복되지 않아야 한다.
	. 기본키 열은 빈 값이 등록될 수 없고 기본키로 설정 시 Null 허용이 해제된다.
	
	------------------------------------------- 실습 ------------------------------------------------
	거래처 코드 nvarchar(5) PK, 
	거래처 명 nvarchar(20), 
	거래처 주소 nvarchar(30), 
	대표자 nvarchar(5)
	를 관리하는 테이블 T_Cust 를 생성하고 간략히 데이터를 추가해 보세요.
*/
SELECT * FROM T_Cust;

/*
  데이터 베이스 모델링

  - 소프트웨어 프로젝트
    . 실생활에 사용되는 정보들을 시스템화하여 사용자 인터페이스를 제공하는 과정
	. 프로젝트 과정 중 시스템 설계 부분에서 데이터베이스 모델링을 진행함

  - 데이터베이스 모델링이란?
    . 프로젝트를 착수하면서 업무분석 및 시스템 설계 단계에서 효율적으로 데이터를 관리할 수 있도록
	  데이터들을 업무 단위별로 그룹화하고, 그룹화된 데이터를 테이블 형태로 구성하면서
	  테이블 간의 상관관계를 설정하는 일
    * 현실에 존재하는 정보들을 어떻게 효율적으로 데이터베이스 테이블에 담아 관리할 것인가를
	  고민하는 과정

  - 테이블 간의 관계 형성
	. 판매현황 (T_SaleList) 에 필요한 데이터를, 기준테이블과 종속테이블로 나누어 상관관계를 확인
	  중복이 될 가능성이 없는 컬럼을 PK 로 설정 : 기준테이블
	  판매현황 테이블에서 고객정보를 가지고 올(참조할) 기준테이블의 컬럼키(PK)와 
	  판매현황에서 고객정보를 등록한 컬럼을 외래키로 지정한다.

  - 외래키 : FK (Foregin Key) 참조를 할 테이블의 컬럼에 FK 를 두어 기준 테이블과 종속 테이블의 
             관계를 형성한다.
    * 관계를 형성한 종속 테이블 컬럼(FK) 에 기준 테이블 PK 컬럼에 없는 값을 등록할 경우
	  참조 무결성 오류가 발생한다.
    * 외래키로 지정할 때는 기준 테이블과 종속 테이블의 데이터형과 크기가 일치하여야 한다.
	기준 테이블 컬럼 PK 1 : N (FK) 종속 테이블
*/


----------------------------------- 실습 -------------------------------------------
USE MyFirstDataBase;
SELECT * FROM T_FruitSaleExcel ORDER BY 판매과일;
LIST