목록전체 글 (37)
개발합니다
1. 문자열 함수 SELECT LOWER(name) FROM USER; -- name를 소문자로 변환 SELECT UPPER(name) FROM USER; -- name을 대문자로 변환 SELECT INITCAP(name) FROM USER; -- name의 첫 문자만 대문자 나머지 소문자 SELECT LENGTH(name) FROM USER: -- name의 길이 출력 SELECT CONCAT(id, name) FROM USER; -- id와 name 문자열 붙인 값 출력 SELECT SUBSTR(name, 2, 4) FROM USER; -- SUBSTR(char, pos, len) char의 pos번째 문자부터 len길이만큼 잘라서 반환 SELECT INSTR(name, 'a', 3) FROM USE..
프로시저(Procedure)는 일련의 작업들을 하나로 묶어서 모듈화한 후 필요할 때마다 호출하여 사용할 수 있는 기능이다. 함수와 비슷해 보이지만 프로시저는 리턴 값이 없다. 그러나 프로시저에서 레퍼런스 변수를 사용하면 결과 값을 리턴할 수 있다. 커서(Cursor)란 특정 SQL 문장을 처리한 결과를 담고 있는 영역을 가리키는 일종의 포인터로, 커서를 사용하면 처리된 SQL 문장의 결과 집합에 접근할 수 있다. - 구조 CREATE [OR REPLACE] PROCEDURE 프로시저명 ( 파라미터 [IN | OUT | IN OUT] 데이터 타입 ) [IS | AS] 변수 선언 BEGIN 프로시저 작업 수행 EXCEPTION 예외처리 END 프로시저명; 1. 사원 정보 리턴 및 부서코드 UPDATE 동시에..
- DECODE 사용방법 : DECODE (컬럼, 조건1, 결과1, 조건2, 결과2, 조건3, 결과3 ...) ex) 1-1 WITH temp AS ( SELECT 'M' gender FROM dual UNION ALL SELECT 'F' gender FROM dual UNION ALL SELECT 'X' gender FROM dual ) SELECT gender , DECODE(gender, 'M', '남자', 'F', '여자', '기타') gender2 FROM temp if (gender == "M") { return "남자"; } else if (gender == "F") { return "여자"; } else { return "기타"; } GENDER GENDER2 M 남자 F 여자 X 기타 e..
Primary Key CREATE TABLE EX1 ( A VARCHAR2(30) PRIMARY KEY, B VARCHAR2(30) ); 또는 CREATE TABLE EX1 ( A VARCHAR2(30), B VARCHAR2(30), CONSTRAINT TEST_PK PRIMARY KEY(A) ); CONSTRAINT 기본키명 PRIMARY KEY(컬럼명) Foreign Key 1. 테이블 생성할 때 설정 CREATE TABLE EX2 ( A VARCHAR2(30), B VARCHAR2(30), CONSTRAINT TEST_FK FOREIGN KEY(A) REFERENCES EX1(A) ); CONSTRAINT 외래키명 FOREIGN KEY(컬럼명) REFERENCES 참조테이블명(참조컬럼) 2. 생성된..
학습했던 mysql과 대부분 비슷하지만 복습하는 느낌으로 다시 한 번 정리 1. CREATE CREATE TABLE USER ( ID CHAR(10), PW VARCHAR2(30), NAME VARCHAR2(30), NUM NUMBER A_DATE DATE, B_DATE TIMESTAMP, LARGE_DATA CLOB ); 데이터 타입 CHAR(n) : 고정길이 문자 / 최대 2000byte / 디폴트 1byte VARCHAR2(n) : *가변길이 문자 / 최대 4000byte / 디폴트 1byte LONG : 최대 2GB 크기의 가변길이 문자형 NUMBER : 가변숫자 / 최대 22byte DATE : 연, 월, 일 ,시 ,분, 초 입력 가능 TIMESTAMP : 연도, 월, 일, 시 ,분 ,초 + 밀..
Controller - Service - DAO - DB Controller에서 Request를 받으면 적절한 Service에 전달하고, Service는 비즈니스 로직을 처리한다. DAO로 데이터베이스를 접근하고 DTO로 데이터를 전달받은 다음, 적절한 처리를 해 반환한다. 1. Web Browser에서 데이터 요청 2. Controller에서 해당 Service 호출 3. Service에서 비즈니스 로직 수행 4. DAO를 통해 데이터베이스에 접속하여 비즈니스 로직 실행에 필요한 쿼리 호출 5. DB에서 알맞은 쿼리를 실행하고 결과 값 반환
DAO (Data Access Object) - DB에 접근하기 위한 객체. DB를 사용해 데이터를 조회하거나 조작하는 기능을 담당하는 것들 - MVC 패턴의 Model DTO (Data Transfer Object) - DTO는 계층 간(Controller, View, Service, DAO, DB) 데이터 교환을 위한 자바 빈즈를 의미한다. - 보통 로직을 가지고 있지 않고, getter/setter 메소드만 가진 클래스이다. VO (Value Object) - 값 오브젝트로써 값을 위해 쓰인다. Read-Only 특징을 가진다. - getter 기능만 존재한다.