Computer Science
-
[SQL] SynonymComputer Science/DB 2023. 4. 20. 21:02
📘 Synonym데이터 딕셔너리 조회소유자 계정과 개발자 계정 분리실습📘 Synonym사전적 의미 : 동의어💡DA Owner . customer 와 같이 schema 이름을 명시해야 한다. 생략하면, 사용자 명으로 되어 오류가 발생한다. → 이 문제를 SYNANYM을 이용하여 해결할 수 있다.데이터 딕셔너리 조회💡데이터 딕셔너리 ① SELECT * FROM DBA_OBJECTS; -- 데이터베이스내에 존재하는 모든 ~ ②SELECT OBJECT_TYPE,COUNT(*) -- 오브젝트 종류 FROM DBA_OBJECTS GROUP BY OBJECT_TYPE; SELECT SEGMENT_TYPE,COUNT(*) -- 세그먼트 종류 FROM DBA_SEGMENTS GROUP BY SEGMENT_TYPE; * ..
-
[SQL] SequenceComputer Science/DB 2023. 4. 20. 21:02
📘 SequenceCreate sequenceSession에서 Sequence 테스트Sequence 정보 조회Sequence 실습📘 Sequence💡정의 (고유한) 일련번호 생성기 일련번호 : 의미 (X), 고유 (O) [참고] 식별자 4가지 특성 ① 최소성 ② 고유성 ③ 존재성 ④ 불변성 일련번호 자동생성방식 ⇒ SEQUENCE 를 사용 💡Database Object - Table, INDEX, Sequence, SYNONYM, VIEW … Create sequence💡① CREATE SEQUENCE SCOTT.ORDER_SEQ -- SEQUENCE 오브젝트 생성 INCREMENT BY 1 -- 1씩 증가 START WITH 1 -- 시작 값 1 MAXVALUE 999999999999 -- 최대 값 M..
-
[SQL] Constraint(선언적 무결성 제약 사항)Computer Science/DB 2023. 4. 20. 21:01
👀 유용한 정보데이터 딕셔너리 조회💡피드백 Tip📘 Constraint (선언적 무결성 제약 사항)데이터 무결성NOT NULLCHECKUnique KeyPrimary KeyForeign Key👀 유용한 정보데이터 딕셔너리 조회💡USER_ : ~소유의 모든 USER_TABLES : 내 소유의 테이블 ↔ SELECT * FROM TAB : 내가 사용 가능한 테이블 USER_TAB_COLUMNS : 내소유의 테이블의 컬럼 정보 USER_INDEXES : 내 소유의 인덱스 USER_CONS_COLUMNS : 내 소유의 컬럼 제약 사항select * from user_tables; select * from tab; select * from USER_TAB_COLUMNS; select * from USER_INDE..
-
[SQL] JOINComputer Science/DB 2023. 4. 20. 21:01
👀 유용한 정보💡피드백 TipSDLC (Software Development Life Cycle) - 소프트웨어개발생명주기📘 JoinJoin 종류Equi-joinNon Equi-Join (EQUAL = 이외의 연산자를 사용하여 JOIN)Outer-JoinAnsi Outer-JoinSelf-Join카테시안 곱 (Cartesian Product)📝과제1. 아래의 3 SQL을 결과를 비교한 후 설명하시오2. 아래 SQL의 실행결과 조회되는 Row 개수를 설명3. JOIN을 사용하여 부서별 급여 지급 순위 계산3-2. RANK, DENSE_RANK 함수를 사용하여 2)와 동일한 결과를 나타내는 SQL 작성4. MAKE_ENV.SQL을 사용하여 실습 환경을 구성한 후 아래의 결과가 출력되는 JOIN 구문 작성5...
-
[SQL] SubQueryComputer Science/DB 2023. 4. 20. 21:00
👀 유용한 정보세션 정보 확인📘 SubQueryScalar SubqueryCORRELATED SUBQUERY (상관서브쿼리) - 매우 비효율적In-Line View (FROM 절에 사용된 SUBQUERY)TOP-N, BOTTOM-M (서브쿼리, ROWNUM을 활용)📘 DML 연산과 Subquery👀 유용한 정보세션 정보 확인SHOW USER; -- system 계정으로 로그인 SELECT * FROM V$SESSION; SELECT * FROM V$SESSION WHERE USERNAME = 'SYSTEM'; 📘 SubQuerySubQuery : Main Query (SELECT, INSERT, DELETE, UPDATE, CREATE) 안에 포함되는 SELECT💡서브 쿼리가 먼저 실행된다. (Neste..
-
[SQL] DML - TRANSACTIONComputer Science/DB 2023. 4. 20. 21:00
📘 TRANSACTIONTransaction 시작Transaction 종료Transaction Control Language (제어 명령어)실습TRANSACTION 시작과 종료 확인문장 범위 ROLLBACK(Statement Level ROLLBACK)트랜잭션 범위 ROLLBACK(Transaction Level Rollback)TRANSACTION과 DDL트랜잭션(Transaction)과 읽기 일관성(Read Consistency)트랜잭션(Transaction)과 Row Level Lock트랜잭션 유형📘 TRANSACTION💡트랜잭션의 사전적 의미거래, 처리 데이터베이스에서의 트랜잭션 의미논리적 일의 단위(A logical unit of work) → SQL 묶음1개의 논리적인 일은 N개의 물리적인 행..
-
[SQL] DML-INSERT, UPDATE, DELETEComputer Science/DB 2023. 4. 20. 20:59
💡피드백 Tip📘 SQL 명령어 분류와 DML📘 INSERTMulti table INSERTConditional INSERT📘 UPDATE📘 DELETE📘 SQL Script file📘 N개의 Session 생성💡피드백 Tip💡v$mystat : 내 sid보기💡TRANSACTION 에 대해 공부/이해하자 📘 SQL 명령어 분류와 DML💡Query의 대상 - 데이터 : 데이터를 조회하는 명령어 DML : 데이터를 조작하는 명령어 TCL : 트랜잭션에 대해 제어하는 명령어💡주로 Query, DML, TCL을 사용하고 DDL, DCL은 DBA가 주로 사용한다. 📘 INSERT💡INSERT : 테이블에 새로운 행(ROW, Record)삽입 💡여러 세션에서의 DML 적용COMMIT 이전) - 1번의 INSERT의..
-
[SQL] DBMS 아키텍처 - Server ProcessComputer Science/DB 2023. 4. 5. 21:49
👀 유용한 정보사용 가능한 테이블 목록 보기💡피드백 Tip그룹행 함수 평균 구하기 비교Parameter Scope📘 DBMS 아키텍처 - Server ProcessDBMS 서버에 연관된 3개의 프로세스1. 사용자 프로세스 (User Process)2. 서버 프로세스 (Server Process)3. 백그라운드 프로세스 (Background Process)Connection 과정Process의 메모리👀 유용한 정보사용 가능한 테이블 목록 보기SELECT * FROM TAB; 💡Cf) Object 표기 : [Schema.]object Name ex) Scott.EMP → scott 소유의 EMP 테이블 (자동으로 세션 정보를 보고 스키마를 생략해도 가능하도록 되어있다.) Column 표기 : [Table_N..