Database

정의: 하나 또는 다수의 목적으로 데이터들의 조직화된 집합체

관계성 있는 테이블로 구성

 

Relational DB 

-테이블(Table) : relations, 조직화된 데이터 원소들의 집합, 데이터베이스에 물리적으로 저장

-레코드(Record): row, tuple, 단순하고 묵시적으로 구조화된 데이터

-필드(Field): column, attribute, 특정한 유형의 데이터 값

 

DBMS(Database Management Sysrem) 정의

-데이터베이스의 정의, 생성, 질의, 업데이트, 관리를 수행하도록 디자인된 소프트웨어

 

DBMS 제품간의 상호 연동성을 위한 기술

-SQL(Structured Query Language)

: RDBMS에 포함된 데이터를 조작하기 위해 설계된 특수 목적 프로그래밍 언ㅇ더

-JDBC(Java Database Connectivity)

: 자바 기반 데이터 접근을 위한 기술

데이터베이스를 접근하는 방법을 정의한 자바 언어를 위한 API

-ODBC(Open Database Connectivity)

:MS에서 만든 DBMS접근을 위한 소프트웨어 표준 규격

 

DDL(Data Definition Language)

§데이터베이스 구조나 스키마 객체를 정의하는데 사용하는 언어
§CREATE : 데이터베이스에 객체들을 생성한다.
§ALTER : 데이터베이스의 구조를 수정한다.
§DROP : 데이터베이스로 부터 객체들을 삭제한다.
§TRUNCATE : 테이블로부터 모든 레코드들을 제거한다.
§COMMENT : 데이터 사전에 코멘트들을 추가한다.
§RENAME : 객체의 이름을 수정한다.

 

DML(Data Manipulation Language)

§정의 : 스키마 객체들 내의 데이터를 조작하는데 사용하는 언어
lSELECT : 데이터를 검색한다.
lINSERT : 테이블에 데이터를 삽입한다.
lUPDATE : 테이블 내 존재하는 데이터를 업데이트한다.
lDELETE : 테이블에서 모든 레코드들을 삭제한다.
lMERGE - UPSERT operation (insert or update)
lCALL : PL/SQL or 서브 프로그램을 호출한다.
lEXPLAIN PLAN : 데이터에 대한 접근 경로를 설명한다.
lLOCK TABLE : 동시성(concurrency)을 제어한다.

 

DCL(Data Control Language)

§GRANT : 데이터베이스에 대한 사용자 접근 권한을 부여한다.
§REVOKE : 접근 권한 부여를 철회한다.

TCL(Transaction Control Language)

§COMMIT : 작업을 저장한다.
§SAVEPOINT : 롤백할 수 있는 트랜잭션 포인트를 식별한다.
§ROLLBACK : 마지막 commit 이전의 오리지널 위치로 복구한다.

 

§SET TRANSACTION : 트랙잭션 옵션들을 변화한다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

출처: 유응구 교수님 수업자료

'java프로그래밍' 카테고리의 다른 글

EL(Expression Language)  (0) 2024.12.10

EL(Expression Language)

  • 정의: JSP 기본 문법을 보완할 목적으로 간단하고 직관적인 표현으로 데이터, 속성, JSP 기본 객체 등 자바 컴포넌트들에 대한 손쉬운 접근 방법을 제공하는 스크립트 언어
  • 등장배경: 스크립팅 요소 활용의 문제점

                  -유지 보수 어려움

                  -제한적인 기능 제공, 다양한 결과 출력 어려움

                  -표준 액션은 구문 구조가 복점, 서브 프로퍼티 접근 불가

  • 스크리팅 요소의 활용이 적은 JSP페이지를 작성하는 것이 추세
  • 주요 사용: MVC 모델 2에서 간결하고 단순화된 뷰(view)를 작성
${<표현식>}

 

특징및 장점

  1. 유효범위 내 객체 접근:

    setAttribute()로 저장된 객체에 쉽게 접근 가능.
  2. 빈즈 객체 프로퍼티:

    빈즈(bean) 객체의 프로퍼티를 간편하게 조회하고 설정할 수 있음.
  3. 컬렉션 요소 접근:

    리스트, 맵 등의 컬렉션 요소에 손쉽게 접근 가능.
  4. EL 기본 객체의 프로퍼티:

    기본 객체(request, session, application 등)의 프로퍼티를 쉽게 사용할 수 있음.
  5. 간단한 연산자 및 조건문:

    기본적인 산술 연산자와 조건문을 제공하여 복잡한 로직을 간단하게 처리 가능.
  6. 자동 형변환:

    문자열을 숫자로 자동으로 형변환하여 사용.
  7. 빈 값 처리:

    값이 없거나 null인 경우를 자동으로 처리하여 NullPointerExceptions 발생 방지.

 

  • 사용 위치
    HTML 태그 안에서 사용:

    HTML 속성에 EL 표현식을 삽입할 수 있음.
  • JSTL에서 사용:

    예: <c:out value="${member.name}" />
  • 표준 액션에서 사용:

    예: <jsp:include page="${param.path}/result.jsp" />
    예: <jsp:getProperty name="member" property="name" />
  • 주의 사항
    -JSP의 스크립팅 요소(스크립틀릿, 표현식, 선언식, 지시자)에서는 EL 사용 불가:
    예: <%= ${param.path} %>는 구문 오류 발생.
    -예약어: EL 예약어는 식별자로 사용할 수 없음.
  • 자료형
    -불리언: true/false
    -정수: 정수 값
    -실수: 실수 값
    -문자열: 작은따옴표(') 또는 큰따옴표(")로 둘러싸인 값 (예: "dream")
    n-ull: 빈 값
  • 연산자
    -empty: 값이 null인지 여부 반환

    예: ${empty param["name"]} → name 값이 null인 경우 true 반환.
    -산술 연산자:

    / : 몫을 구함 (div)
    % : 나머지를 구함 (mod)
  • 비교 연산자
    -피연산자는 동일한 유형의 데이터여야 하며, true/false 값을 반환.
  • 논리 연산자
    피연산자는 불리언식이어야 하며, true/false 값을 반환.
  • 객체 접근 연산자
    -EL 표현식은 어떤 타입도 반환할 수 있으며, 객체의 속성에 접근할 때 [] 또는 . 연산자를 사용.
    -두 연산자는 비슷하지만, []는 일반적이고 .는 간략한 형태.
    -객체의 속성이 또 다른 객체를 반환할 경우, 속성에 접근할 때도 같은 방식 사용 가능.

 

 

 

출처: 유응구 교수님 수업자료

'java프로그래밍' 카테고리의 다른 글

DBMS-MySQL  (0) 2024.12.10

+ Recent posts