Oracle5 Day 44. [Oracle SQL] COMMIT, ROLLBACK, SEQUENCE, 테이블 구조만 복사, 구조 변경 트랜잭션 관리 - 관계형 데이터베이스에서 실행되는 여러 개의 sql 명령문을 하나의 논리적 작업 단위로 처리하는 개념 - COMMIT : 트랜잭션의 정상적인 종료 트랜잭션내의 모든 SQL 명령문에 의해 변경된 작업 내용을 디스크에 영구적으로 저장하고 트랜잭션을 종료 INSERT, DELETE, UPDATE와 같은 명령문 - ROLLBACK : 트랜잭션의 전체 취소 트랜잭션내의 모든 SQL 명령문에 의해 변경된 작업 내용을 전부 취소하고 트랜잭션을 종료 제일 마지막 COMMIT에서 그 전 COMMIT으로 돌아감 시퀀스 -- SEQUENCE : 유일한 식별자 -- 기본 키 값을 자동으로 생성하기 위하여 일련번호 생성 객체 -- 여러 테이블에서 공유 가능 EX) 테이블 생성할 때, STUDNO와 같이 순서대로.. 2022. 3. 8. Day 41. [Oracle SQL] CASE 함수 : CASE 함수는 DECODE 함수의 기능을 확장한 함수 CASE expression WHEN comparison exp1 THEN return exp1 [WHEN comparison exp2 THEN return exp2 ELSE else expression] END DECODE 사용시 주의사항 DECODE CASE WHEN 기능 - 조건단위 분기 - IF 문 대응 - 조건단위 분기 - SWITCH CASE 문 대응 좋은 점 - 코드의 함축성 - 전형적인 구문으로 가독성 향상 - 비정형 비교 및 범위비교가 쉽다. 불편한 점 - 여러 조건이 한꺼번에 뭉쳐질 때 복잡하다. - 범위 비교시 Sign 함수 함께 사용으로 성능에 영향 - 비정형 비교 시 코드생성이 어려워짐 - 가독성이 낮다. -.. 2022. 3. 3. Day 40. [Oracle SQL] 숫자 함수, 날짜 함수, 명시적 데이터 타입 변환, NVL 함수 데이터베이스 숫자 함수 ROUND : 지정한 소수점 자리로 값을 반올림 TRUNC : 지정한 소수점 자리까지 남기고 값을 버림 MOD : m 을 n 으로 나눈 나머지 -- ROUND(123.17, 1) -> 123.2 -- TRUNC(123.17, 1) -> 123.1 -- MOD(12, 10) -> 2 CEIL : 지정한 값보다 큰 수 중에서 가장 작은 정수 = 올림 FLOOR : 지정한 값보다 작은 수 중에서 가장 큰 정수 = 버림 -- CEIL(123.17) -> 124 -- FLOOR(123.17) -> 123 날짜 함수 SYSDATE : 시스템의 현재 날짜 (날짜) MONTHS_BETWEEN : 날짜와 날짜 사이의 개월을 계산 (숫자) ADD_MONTHS : 날짜에 개월을 더한 날짜 계산 (날짜.. 2022. 3. 2. Day 39. NULL 개념, 문자 함수 및 문자 조작 함수 데이터베이스 -- NULL 개념 : 0이 아니고 빈문자열과 동일(순수 데이터 공간이 NULL) -- NULL 값과 다른값과의 연산 결과는 NULL -- '' O ' ' X -- 자바에서는 ""가 널값이 아니였지만 DB에서는 NULL값 -- 스칼라 함수는 단일 값 하나만 출력 -- 함수 안에서 NULL -- AVG 구할때 1000 NULL NULL NULL 2000 이면 1500로 출력 -- 주의사항 1000 + NULL은 NULL 문자 함수 INITCAP : 문자열의 첫 번째 문자만 대문자로 변환 INITCAP( EXPR | COLUMN ) LOWER : 문자열 전체를 소문자로 변환 LOWER ( EXPR | COLUMN ) UPPER : 문자열 전체를 대문자로 변환 UPPER ( EXPR | COLUM.. 2022. 2. 28. 이전 1 2 다음