0229
·
DBMS/Oracle SQL
등급번호 등급이름 유저번호 유저아이디 등급번호 1 VVIP 1 A 1 2 VIP 2 B 2 3 NORMAL NULL NULL NULL LEFT OUTER JOIN - 우선 조인을 기준으로 왼쪽 테이블의 정보를 전부 가져온 후 온 조건과 일 ---------------------------------- 1. TO_CHAR() : 소괄호 안에 들어온 값을 문자열 타입으로 변환해준다. 날짜 형식을 변경할 때 유용하다. EX) TO_CHAR(SYSDATE, 'YYYY-MM-DD'); T0_CHAR(SYSDATE, 'YYYY년 MM월 DD일'); 2. TO_NUMBER() : 소괄호 안에 들어온 값을 NUMBER 타입으로 변환 3. TO_DATE() : 소괄호 안에 들어온 값을 DATE타입으로 변환 CHAR(10..
계정만들기
·
DBMS/Oracle SQL
1. CMD 에러나면 추방됨 디비 접근 권한 줌 (GRANT CREATE SESSION TO 계정명) 계정에 DB를 접근할 수 있는 권한 부여 HR 계정을 조회할수 있는 권한 주기 HR계정에서 TEST계정에게 EMPLOYEES 테이블을 UPDATE DELETE INSERT 할 수 있는 권한 부여 테이블 접근 권한 부여 -- 계정 권한 부여 GRANT SELECT, UPDATE, DELETE, INSERT ON EMPLOYEES -- 테이블 TO TEST; --계정명에게 권한 부여 TO -- 계정 권한 회수 REVOKE UPDATE, DELETE, INSERT ON EMPLOYEES FROM TEST; -- TEST으로 부터 FROM 계정 삭제 DROP USER삭제학 계정명 오류남
ON DELETE CASCADE
·
DBMS/Oracle SQL
4. ON DELETE CASCADE - FK를 설정할 때 사용할 수 있는 옵션 - ON DELETE CASCADE를 걸어준 FK는 부모테이블의 데이터가 삭제되면 그 데이터를 참조하고 있는 자식 데이터도 자동으로 삭제된다. 3. NVL(), NVL2() 함수 - () 소괄호 있으므로 함수임. - SELECT에서 사용 - 조회할 때 NULL값을 다른 값으로 변경하여 조회할 수 있다. - 데이터를 수정하는 것이 아닌 조회할 때 값만 변경한다. - 1. NVL(컬럼명, 값) : NULL값 대신 지정한 값으로 변경하여 조회한다. - 2. NVL2(컬럼명, NULL이 아닐 때의 값, NULL일때의 값) : NULL이 아닐때의 값을 각각 설정할 수 있다.
TCL (TRANSACTION CONTROL LANGUAGE) :
·
DBMS/Oracle SQL
TCL 트랜잭션 - 작업단위 - 여러 개의 SQL문 묶음 트랜잭션 제어어 - COMMIT : 모든 작업을 확정하는 명령어 - ROLLBACK : 모든 작업을 취소하고 이전 커밋 시점으로 되돌리는 명령어 AUTO 커밋 자동 - 실수하면 롤백 불가 ** 롤백은 가장 최근 커밋시점으로만 돌아갈 수 있다. [1] 커밋 [2] 커밋 [3:현재] 2로만 이동가능 1로 불가 트랜잭션 명령어는 DML에만 적용된다. TRUNCATE와 DELETE 차이 - 둘 다 테이블에 있는 모든 데이터 삭제 명령어이다. 차이점 TRUNCATE :DDL(롤백불가 DELETE: DML (롤백 가능) - 정규화 데이터의 삽입/수정/삭제의 이상현상을 제거하기 위한 작업 데이터의 중복을 최소화하는데 목적이 있다. 6차 정규화까지 있으나 보통 ..
오라클 SEQUENCE 사용법 (규칙성)
·
DBMS/Oracle SQL
1. 시퀀스 (SEQUENCE) - 오라클에서 중복되지 않는 값을 자동으로 순차적이게 생성하는 것 - 보통 PK 값에 중복 값을 방지하기 위해 사용된다. 2. 시퀀스 생성 및 삭제 CREATE SEQUENCE 시퀀스명; DROP SEQUENCE 시퀀스명; 2. 시퀀스 사용 INSERT INTO TBL_BOOK VALUES(SEQ_BOOK.NEXTVAL , '셜록', '추리', NULL); 시퀀스명 : SEQ_BOOK 3. 시퀀스 옵션 - START WITH 시작값 : 시퀀스의 시작값을 설정 -- 시퀀스 시작값 100으로 설정 CREATE SEQUENCE SEQ_TEST START WITH 100; - INCREMENT BY 증가값 : 시퀀스의 증가값을 설정 -- 시퀀스 숫자 5씩 증가 CREATE SEQ..
외부 데이터(sql파일) 삽입
·
DBMS/Oracle SQL
외부 데이터 삽입 - 남들이 만들어 놓은 쿼리를 가져와서 사용하는 방법 1. 폴더 압축해체 2. 관리자cmd 3. hr 로그인 // sql 계정과 비밀번ㅅ호 입력 4. @ sql 파일들 하나하나씩 드래그 +엔터 - 경로에 한글이나 띄어쓰기 있으면 오류날 확률 높음 -> 최대한 영어로 파일 만들어라 5. 한꺼번에 하면안되나??