3교시 : SQL 분류

 DML(데이터 조작어) 
대상 : 데이터 
- INSERT UPDATE DELETE MERGE / SELECT(Query)

 DDL(데이터 정의어) 
대상 : 데이터베이스 객체 
- 데이터를 관리하기 위한 데이터베이스 자료 구조
- 테이블, 뷰, 시퀀스, 인덱스, 제약조건, 유저 등등등
- CREATE, ALTER, DROP, TRUNCATE 
- DML, DCL, TCL을 제외한 거의 모든 SQL문 
- 데이터 베이스 객체는 종류가 다양하여 객체 카테고리를 지정해야함 

 DCL(데이터 제어어)
대상 : 데이터베이스 권한 
- 시스템 권한, 객체 권한, 롤
- GRANT ... TO ... : 권한 부여
- REVOKE ... FROM ... : 권한 외수 

 TCL(트랜잭션 제어어)
대상 : 트렌잭션
- 어떤 작업을 수행하는데 있어서 분리될 수 없는 일의 단계(원자적 단위)
- 일의 단계중 하나라도 실패하면 전체 작업 실패(ALL or NOTHING)
- 모든 단위기능이 성공해야만 트렌젝션 성공 
- COMMIT DML에 문제가 없어서 영구적으로 반영 
- ROLLBACK DML에 문제가 있어 트랜잭션 동안의 모든 변경사항을 없었던 일로
- SAVEPOINT 트랜잭션의 중간으로 되돌릴 수 있는 중간 지점 설정 (ROLLBACK TO SAVEPOINT sp1) 
- 세션 당 트랜잭션은 하나 (세션:유저접속논리적인연결, 물리적연결은커넥션)  
- 트랜잭션의 시작은 첫 DML 
- 트랜잭션의 종료는 COMMIT, ROLLBACK
- DDL, DCL은 문장 자체가 하나의 트랜잭션, 세션의 트랜잭션 자동 종료됨
- 트랜잭션은 DML로 구성됨.  SELECT는 아무영향X 




2교시 : SQL 소개, SQL 처리 과정


 SQL 
- Declarative Programming (선언적) SQL 
  WHAT 프로램이 무엇을 수행시킬것인가, Product 기능이 이미 갖춰짐, 다수의 명령어(익힐것이 많다)
  Insert를 구현하는 것이 아니라 이미 있는 Insert문을 써서 명령만 내리면 됨 
  Imperative Programming (명령적) java 등 언어
  HOW 프로그램이 어떻게 동작하는가, Algorithm, Tools 기능을 구현해야함, 소수의 명령어  
  *Oracle Database SQL Language Reference 메뉴얼, Graphic Syntax Diagram 참고

 SQL 처리과정
- SQL 처리 단계, Shared Pool 체크 (어려움.시간되면 다시듣기)
- 비용 기반 옵티마이저 (CBO) 
SQL을 실행하는 최적의(비용이 적게 드는) 실행 계획 선택
실제 일을 계획하고 수행, SQL처리에 있어서 핵심
- 실행 계획 (Execution Plan)
SQL을 실행하기 위한 예측 단계, 절차의 모음 

 SQL 학습 
무슨일을 요청할지 고민하고 실제 일은 옵티마이져가 수행한다.
옵티마이저가 최적의 실행계획을 세울 수 있도록 관리 해 줘야 함.
SQL문으로 어떠한 일을 할 수 있는지 메뉴얼 레퍼런스를 읽어 RDBMS가 할 수 있는 기능을 익혀야함.




1교시 : 관계형 데이터베이스 관리 시스템 (RDBMS)

데이터, 데이터베이스, 데이터베이스관리시스템
- 데이터 종류 : 구조적(정형=표형태)데이터, 반 구조적(XML, JSON), 비 구조적 
- 소개
- 관계형 모델 구성 요소 
        관계(2차원 테이블), 
        연산자(쿼리,조인,프로젝트 등), 
        데이터 무결성(제약 조건으로 데이터의 일관성, 정확성 보장) 
 관계형 데이터베이스
- 정의
- 용어 : 행Row(튜블tuple,레코드record), 열Column(속성attribute 중요), 필드(값)
 데이터 모델 
- 목적 : 머릿속 개념을 표출하기위해 (의사소통, 분류, 설명, 조사, 전개, 분석, 모방 등) 
        클라이언트가 생각하는 시스템 모델을 
        논리 데이터 모델링을 통해 엔티티 모델(논리 모델)로, ERD > 어떤형으로 선택할건지
        관계 데이터 모델링을 통해 테이블 모델(관계 모델)로 > 데이트베이스디자인
        물리적 데이터 모델링을 통해 물리 모델로  > 데이터베이스빌드 
- 엔티티 관계모델(Entity Relationship Diagram)  
        ERD를 통해 업무 이해 가능. 엔티티, 속성(엔티티설명분류기술), 
        관계(선택가능성 0or1 최소 카디낼리티 점선실선, 정도 1orM 최대 카디낼리티 단일행까치발)
        EX) 사원은 부서와 최소 관계 없을 수 도 있고 맺는다면 최대 1개까지 이다.
        하나의 부서는 최소 1개사원으로 구성되어 지고 최대 여러개의 사원으로 관계를 가능
- 여러테이블 연관짓기 : 조인, PK(고유 식별), FK(다른 테이블과 공유되는)





GET

api/product/food

food목록 리스트 getList
GETapi/product/food/22번 food상세 get
POSTapi/product/foodfood등록 insert
DELETEapi/product/food/22번 food삭제 delete
PUTapi/product/food/22번 food수정 update
     
GETview/product/foodfood목록 페이지product/foodListgetList
GETview/product/food/downloadExcelfood목록 excel down getList
GETview/product/food/22번 food상세페이지product/foodDetailget
GETview/product/food/addfood등록 폼product/foodForm-
GETview/product/food/2/edit2번 food수정 폼product/foodFormget


jQuery 테이블 접근

$('#listTable tr').each(function(index){
// 테이블 td,td 사이즈
var tableSize = $('#listTable tr').length ;
// td값
var tdText1 = $(this).children().eq(0).text();
var tdText2 = $(this).children().eq(1).find("input[id=‘abc’]”).val();
//특정문자 여부
var charCheck = text.indexOf(“,”);
//특정문자 전체 변경
text = text.replace(/,/gi,'');
});

+ Recent posts