'모바일'이라는 새로운 웹 접근 환경의 등장 새로운 모바일 웹 환경이 PC를 기반으로 한 데스크톱 웹 환경을 빠르게 대체 웹 기술의 발전 웹 서비스 제공 방식의 변화 데이터 중심의 웹 -> 서비스 중심의 웹 웹 패러다임의 진화 웹 1.0 포털 중심의 웹의 시대 일방적으로 정보를 제공 웹 2.0 플랫폼 중심의 웹 시대 정보의 생성, 공유, 참여가 가능 -> 유튜브나 위키피디아 웹 3.0 웹이 모든 환경의 플랫폼이 되는 시대 원하는 정보를 찾아 개인별 맞춤 서비스가 가능 웹 패러다임의 변화 웹 언어의 발전 웹 마크업 언어의 발전 마크업 문서 내용 자체가 아닌 내용에 관한 크기와 모양, 표시 위치와 같은 부가적인 정보 웹 마크업 언어의 종류 HTML5 사양 HTML5의 발전 방향 웹 브라우저라는 플랫폼 위에서..
관계형 DB 설계 과정 개념적 설계(E-R 모델) - E-R Diagram E-R 모델을 이용해서 E-R 다이어그램을 만든다. 논리적 설계 Step1 - 매핑 룰 논리적 설계 Step2 - 정규화(3NF or BCNF) 물리적 데이터 모델링 데이터베이스를 하드디스크와 같은 저장장치에 저장할 때 어떤 식으로 저장하여 테이블 형태로 사용자들에게 보여줄 것인가를 결정 개체 관계 모델(E-R Model) 개체-관계(Entity-Relationship) 모델 현실 세계의 많은 데이터 중에서 관심의 대상이 되는 데이터를 언어보다 좀 더 형식화된 다이어그램을 사용하여 표현한 것 개체들 간의 관계를 나타냄. 개체 선택: 요구사항 명세서가 필요. 여기서 명사가 해당됨. 관계: 요구사항 명세서에서 동사에 해당됨. 속성: ..
관계형 데이터베이스 설계 설계 1이 더 좋다! 설계2의 경우 불필요한 데이터 중복이 있다. 설계 1은 데이터 중복이 있으나 필요한 데이터 중복이다. 설계1 학생 = {학번, 이름, 주소}, PK = {학번} 수강 = {학번, 과목번호, 성적}, PK = {학번, 과목번호}, FK = {학번} 설계2 학생_수강 = {학번, 과목번호, 이름, 주소, 성적} PK = {학번, 과목번호} 불필요한 중복의 문제점 디스크 공간을 낭비한다. Update가 아주 복잡해진다. 불필요한 중복이 생겼을 때의 해결책 스키마 나누기(Decomposition) Decomposition 할 때 고려할 점들은? 가짜 투플을 만들지 않는 나누기(필수), 함수적 종속을 유지하는 나누기(선택) 가짜 투플: 나뉜 두 테이블을 자연 조인했을..
에러 처리 에러 처리 방법 PL/SQL 블록 내의 SQL문이 정상적으로 실행되지 못할 때 에러가 발생한다. 에러가 발생하면 EXCEPTION절에 의해 처리할 수 있다. 자주 발생하는 에러처리기는 오라클 사에서 기본적으로 제공하며, 자주 발생하지 않는 에러는 사용자가 직접 정의할 수 있다. Predefined (Internal) Exception UnDefined Exception User Defined Internal Exception Exception Trapping Function 미리 정의된 에러 처리 EXCEPTION 절은 자바의 try-catch 문과 같음. DECLARE BEGIN EXCEPTIION WHEN [예외조건-1] THEN [처리문장-1]; WHEN [예외조건-2] THEN [처리문..
PL/SQL 개요 set echo on set serveroutput on: 출력을 위한 옵션 SQL의 장점과 단점 장점 사용자가 이해하기 쉬운 단어로 구성 쉽게 배울 수 있다. 복잡한 로직을 간단하게 작성할 수 있다. ANSI에 의해 문법이 표준화되어 있다. 단점 반복처리를 할 수 없다.(Loop) 비교처리를 할 수 없다.(IF) Error 처리를 할 수 없다.(예외처리) SQL문을 캡슐화 할 수 없다. 변수 선언을 할 수 없다. 실행할 때 마다 분석작업 후 실행 Network Traffic을 유발한다. PL/SQL의 생성과 실행 반복 처리를 할 수 있다.(Loop) 비교 처리를 할 수 있다.(IF) Error 처리를 할 수 있다.(예외 처리) SQL문을 캡슐화 할 수 있다.(데이터의 보안 및 무결성)..
트랜잭션 자료 항목을 읽고 또한 때로는 값을 고치기도 하는 프로그램 처리(수행) 단위이다. 트랜잭션 시작. select ... select ... insert ... delete ... select ... delete ... 트랜잭션 끝 트랜잭션의 예 은행 돈을 찾는다, 돈을 넣는다, 돈을 옮긴다, 새로 계좌를 만든다, 있던 계좌를 없앤다. 비행기 좌석을 예약한다, 취소한다, 날짜를 바꾼다, 편 번호(flight number)를 바꾼다. 기차 좌석을 예약한다, 취소한다, 열차 번호를 바꾼다. 주식 주식을 사는 일, 파는 일, 사거나 파는 일 취소 ✅ 데이터베이스에서는 일관성이 굉장히 중요하다. 트랜잭션의 네 가지 특성: ACID 원자성(atomicity) All or Nothing 한 트랜잭션 내에 있는..