Skip to content

skc4234/2026-03-03-OracleStudy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 

Repository files navigation

04/10 - JDBC 오라클 연결

OracleFirstProject 참조

04/13 - 데이터베이스 개념, 발전 과정 / 릴레이션과 무결성 / DQL-SELECT 기초 정리

  1. 데이터베이스 => 조직에 필요한 정보를 얻기 위해 논리적으로 연관된 데이터를 모아놓은 것

  2. 데이터베이스의 개념

    • 통합된 데이터 : 데이터를 한 곳으로 통합해서 중복제거, 일관성 유지, 무결성의 원칙을 지킨다
    • 저장된 데이터 : 직접 지우기 전까진 저장장치에 계속 저장되어 있다
    • 운영 데이터 : 업무를 위한 검색을 할 목적으로 저장된 데이터
    • 공용 데이터 : 한 사람이 아니라 여러명이 접근할 수 있다
  3. 데이터베이스의 특징

    • 실시간 접근성 : 종료되지 않고 실시간으로 사용자에게 서비스를 제공한다
    • 계속적인 변화 : 데이터는 시간에 따라 삽입, 삭제, 추가 등 계속 변화한다
    • 동시 공유 : 데이터는 여러 사람에게 공유된다
    • 내용에 따른 참조 : 메모리 주소가 아닌 실제 데이터값을 참조한다
  4. 데이터베이스 시스템 구성

    • DBMS : 데이터베이스를 사용자가 사용할 수 있게 연결시켜주는 소프트웨어
    • 데이터베이스 : 데이터를 모아 둔 토대, 물리적으로는 데이터들이 실제 저장된 곳(하드디스크 등)
    • 데이터 모델 : 데이터가 저장되는 기법(스타일)
  5. 정보 시스템의 발전

    • 파일 시스템 - 각 프로그램이 독립적으로 처리 -> 중복, 일관성 훼손
    • 계층형 시스템 - 트리구조, 한방향으로만 처리
    • 네트워크 시스템 - 클라이언트/서버
    • 관계형 데이터베이스 시스템 - 데이터를 종류별로 나눠서 저장하고 체계적으로 관리한다
    • 분산 데이터베이스 시스템 - 각각 데이터베이스를 이용하여 필요시 상호연동
    • 최근에는 비정형화된 데이터를 정형화해서 예측 가능한 모델로 처리한다 => AI
  6. 파일 시스템 VS DBMS

    • 데이터 정의 : 응용프로그램 / DBMS(오라클 사용)
    • 데이터 저장 : 파일 / 오라클
    • 데이터 접근 : 응용프로그램 / SQL 언어
    • 사용 언어 : 자바,C,C++... / 자바, SQL
    • CPU/주기억장치 : 적음 / 많음
  7. 데이터베이스 사용자

    • 일반 사용자 : SQL을 모르면서 일반적인 검색,삭제,수정 등의 작업만 하는 사용자 => 검색어를 입력하면 프로그래머가 SQL 문장을 제작 => LIKE '%검색어%'
    • 응용 프로그래머 : 데이터 처리 로직을 만든다(자바, SQL 등 사용)
    • SQL 사용자 : 업무 담당자 => SQL문 사용, 전산실
    • 데이터베이스 관리자(DBA) : 보안 관리, 설계, 유지보수 등
  8. 관계 데이터 모델

    • 데이터베이스 모델
      • 계층 데이터 모델
      • 네트워크 데이터 모델
      • 관계 데이터 모델
      • 객체 데이터 모델
      • 객체-관계 데이터베이스
  9. 릴레이션, 튜플, 애트리뷰트

    • 릴레이션(=TABLE) : 행과 열로 구성된 데이터 테이블
    • 튜플(=ROW) : 행, 클래스의 객체 인스턴스
    • 애트리뷰트(=COLUMN) : 열, 클래스의 멤버변수
    • 도메인 : 속성(=COLUMN)의 집합
  10. 릴레이션의 특징

    • 속성(컬럼)은 단일 값이다
    • 속성은 중복이 없다
    • 속성은 순서가 없다
    • 튜플도 순서가 없다
  11. 데이터 무결성 / 참조 무결성

    • 이상현상 반드시 방지(수정, 추가, 삭제) => 원하지 않는 데이터 변경 위험
    • 반드시 중복없는 데이터 사용 => PRIMARY KEY
    • 이미 사용중인 데이터를 참조할 수 있게 만든다 => FOREIGN KEY
  12. KEY의 종류

    • 각 데이터를 구별하기 위한 값(구분자) ex) 배열/List의 index => 기본키(PRIMARY KEY) => 유일값 => 번호 => 영화번호, 도서번호, 게시물 번호 등 => CREATE SEQUENCE : 자동 번호 생성 => 데이터 무결성 목적으로 반드시 한 개 이상이 존재(NOT NULL)

    • 후보키 => 기본키가 될 수 있는 키 => ID(PK)를 대신하는 후보키 : 주민번호(보안 위험) / 전화번호 / 이메일 주소 => NOT UNIQUE : 중복 불가

    • 대체 키 => 후보키 중에 기본키로 선택 안된 키 => 이메일 주소, 주민번호 등

    • 외래키(FOREIGN KEY) : 참조 무결성 => 다른 테이블의 기본키를 이용해서 연결

       ```
       게시판(게시판 번호(PK)) - 댓글(게시판 번호 포함)                       
       회원(ID(PK)) - 예약(회원 ID)
       ```                  
      
    • 슈퍼키 / 대리키 등

  13. 관계대수 => 데이터를 찾는 방법

    • 셀렉션 => 조건에 맞는 데이터를 찾는 경우 => WHERE절 사용
    • 프로젝션 => 출력에 필요한 컬럼만 선택
    • 조인 => 서로 다른 테이블을 연결해서 사용할 때
    • 집합연산자 => 합집합 / 차집합 / 교집합 / 카디션 프로덕트
  14. DQL - SELECT 문장

    • 형식/순서
      SELECT *(ALL) / 원하는 컬럼지정(column list)
      FROM 테이블명;
      => 필수 조건
      [
      WHERE 조건(연산자)
      GROUP BY(그룹 컬럼)
      HAVING(그룹 조건, GROUP BY가 있을때만 사용)
      ORDER BY(정렬 컬럼) DESC(내림차순)/ASC(오름차순)
      ]
      => 옵션, 순서 지켜야함
      
  15. SQL의 종류

    • DML(데이터 조작어) : **SELECT => 데이터 검색(형식 많음), INSERT => 데이터 추가, UPDATE => 데이터 수정, DELETE => 데이터 삭제
      • SELECT는 검색
      • INSERT, UPDATE, DELETE는 데이터가 변하기 때문에 반드시 COMMIT; 필요
    • DDL(데이터 정의어) : 테이블 / 뷰 / 시퀀스 / 인덱스 / 시노님 / 함수 / 프로시저 / 트리거 등을 만들 때 사용
      • CREATE : 생성, DROP : 삭제, ALTER : 변경, TRUNCATE : 데이터 잘라내기, RENAME : 이름 변경
    • DCL(데이터 제어어) : 데이터 권한 관리
      • GRANT : 권한 부여, REVOKE : 권한 해제
    • TCL(트랜잭션 제어어)
      • COMMIT : 정상적으로 저장, ROLLBACK : 명령문 전체 취소, SAVEPOINT : 원하는 부분만 취소

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages