일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- visualstudio code
- github token
- OrCAD 다운로드
- PHPStorm
- localhost
- 파이썬
- Python
- clone
- console창
- github clone
- 오류
- 단축키
- vscode
- 클론
- MySQL
- run sql script
- Visual Studio Code
- csv
- cmd
- 따옴표 삭제
- 에러
- database
- 깃 토큰
- 데이터베이스
- jupyter
- import data
- error
- php
- error 해결
- DataGrip
- Today
- Total
목록프로젝트 기반 JAVA 응용 SW개발 : 22.07.19~23.01.20/Oracle SQL (14)
개발 노트

-- PACKAGE 선언부(Header) (Interface) CREATE OR REPLACE PACKAGE KK_COLLECTION_PKG AS g_in_sawonid VARCHAR2(4) := 'S003'; -- 손예진 (임의 입력 사원 지정), 글로벌함수 g_prod_cnt NUMBER(9) := 0; --행동강령 -- 1. 당월기초 입고 수량을 생성한다. PROCEDURE KK_COLLECTION_PRC1(p_sum_yymm IN VARCHAR2); --2. 일자별 거래처 제품별 판매현황(SMCP10)정보를 생성 PGM PROCEDURE KK_COLLECTION_PRC2(p_sum_yymm IN VARCHAR2); --3. 일자별 제품별 판매현황(SMProd10)정보를 생성 PGM PROCEDUR..

정규화 문제 문제 1. 문제 2. 제품번호 -> 제품명 제품번호 -> 재고 수량 주문번호 -> 수출여부 주문번호 -> 고객번호 주문번호 -> 사업자번호 고객번호 -> 사업자번호 고객번호 -> 우선순위 제품 번호 || 주문번호 -> 주문수량 (제품번호와 주문번호가 pk이므로 제품 번호, 주문번호 -> 주문수량 이 될 확률이 높다.) 문제3. KK 영업매출현황 TABLE 생성 -> scott3 계정에서 Create Table-Package 실습용 자료 생성.sql 코드 전부 붙여넣기 [이번부터 전부 scott3에서 실습] --원래 INSERT문은 INSERT INTO 테이블명(칼럼명) VALUES 넣을 값 --인데 서브쿼리를 사용하면 VALUES를 쓰지 않고 INSERT INTO 테이블명(칼럼명) SELEC..

--과제 -- 1) SEQUENCE 생성 DROP SEQUENCE emp_row_seq; CREATE SEQUENCE emp_row_seq; --2) Audit Table 생성 DROP TABLE emp_row_audit; CREATE TABLE emp_row_audit( e_id NUMBER(6) CONSTRAINT emp_row_pk PRIMARY KEY, e_newname VARCHAR2(30), e_oldname VARCHAR2(30), e_newsal NUMBER(7,2), e_oldsal NUMBER(7,2), e_gubun VARCHAR2(10), e_date DATE ); --3) Trigger emp_row_aud3생성 CREATE OR REPLACE TRIGGER emp_row_aud3..

-- PROCEDURE 생성 과제 -- 1. 파라메타 : (p_empno, p_ename, p_job, p_mgr, p_sal, p_deptno ) -- 2. emp TBL에 Insert_emp Procedure -- 3. v_job = 'MANAGER' -> v_comm := 1000; -- 아니면 150; -- 4. Insert -> emp -- 5. 입사일은 현재일자 CREATE OR REPLACE PROCEDURE Insert_emp (p_empno IN emp.empno%TYPE, p_ename IN emp.ename%TYPE, p_job IN emp.job%TYPE, p_mgr IN emp.mgr%TYPE, p_sal IN emp.sal%TYPE, p_deptno IN emp.deptno%TY..

PL/SQL의 개념 Oracle에서 지원하는 프로그래밍 언어의 특성을 수용한 SQL의 확장 PL/SQL Block내에서 SQL의 DML(데이터 조작어)문과 Query(검색어)문, 그리고 절차형 언어(IF, LOOP) 등을 사용하여 절차적으로 프로그래밍을 가능하게 한 강력한 트랜잭션 언어 장점 1) 프로그램 개발의 모듈화 : 복잡한 프로그램을 의미있고 잘 정의된 작은 Block 분해 2) 변수 선언 : 테이블과 칼럼의 데이터 타입을 기반으로 하는 유동적인 변수를 선언 3) 에러 처리 : Exception 처리 루틴을 사용하여 Oracle 서버 에러를 처리 4) 이식성 : Oracle과 PL/SQL을 지원하는 어떤 호스트로도 프로그램 이동 가능 5) 성능 향상 : 응용 프로그램의 성능을 향상 PL/SQL의 ..
1. 폴더에 백업 1) C:\oraclex에 mdbackup폴더 생성 2) Oracle의 Admin(system계정)에서 directory와 권한 설정 'C:\oraclex\mdbackup'폴더를 mdBackup폴더라고 정의하겠다. CREATE OR REPLACE DIRECTORY mdBackup AS 'C:\oraclexe\mdbackup'; scott에게 권한을 준다. GRANT Read, Write ON DIRECTORY mdBackup TO scott; 3) Admin에서 mdBackup Directory와 권한 획득 했으면 계정 전체 백업하기 (학원 컴퓨터 기준) cmd에서 하단 실행 >> cd C:\oraclexe\mdbackup >> EXPDP 계정명/비밀번호 Directory=mdbacku..

-- 1. Foreign Key (중요 : 별3개) -- 1) Restrict : 삭제할 때 작업 없음.(기본설정) 외래키 연관관계 때문에 자식이 존재하면 삭제 안됨 -- 선언 : Emp Table에서 REFERENCES DEPT(DEPTNO) -- 예시 : 오류 integrity constraint (SCOTT.FK_DEPTNO) violated - child record found DELETE dept WHERE deptno = 10; -- 2) Cascading Delete : 같이 삭제됨. 종속삭제. -- 선언 : Emp Table에서 REFERENCES DEPT (DEPTNO) ON DELETE CASCADE -- 예시 : 부모 DEPT의 deptno76을 삭제하면 이걸 참조하는 자식 EMP의 ..

--1. MERGE 개요 -- 구조가 같은 두개의 테이블을 비교하여 하나의 테이블로 합치기 위한 데이터 조작어 -- WHEN 절의 조건절에서 결과 테이블에 해당 행이 존재하면 UPDATE 명령문에 의해 새로운 값으로 수정, -- 그렇지 않으면 INSERT 명령문으로 새로운 행을 삽입 --1) MERGE 예비작업 --DDL(CREATE)은 COMMIT할 필요가 없다. CREATE TABLE professor_temp AS SELECT * FROM professor WHERE position = '교수'; --(1) 교수가 명예교수로 2행 Update UPDATE professor_temp SET position = '명예교수' WHERE position = '교수'; --(2) 김도경 씨가 신규 Inser..

[서브쿼리의 개념] 서브쿼리가 먼저 실행되고 메인쿼리가 실행된다. --SUB Query(중요, 별 3개)-- --하나의 SQL 명령문의 결과를 다른 SQL 명령문에 전달하기 위해 --두 개 이상의 SQL 명령문을 하나의 SQL명령문으로 연결하여 처리하는 방법 --1-1. 목표 : 교수 테이블에서 ‘전은지’ 교수와 직급이 동일한 모든 교수의 이름 검색(서브쿼리 이용하지 않음) --1) 교수 테이블에서 ‘전은지’ 교수의 직급 검색 SQL 명령문 실행 SELECT position FROM professor WHERE name='전은지'; --2) 교수 테이블의 직급 칼럼에서 1 에서 얻은 결과 값과 동일한 직급을 가진 교수 검색 명령문 실행 SELECT name, position FROM professor W..

8/8의 과제 내용 다시 복습하기 [DeadLock 함수] 도구 > 세션모니터를 확인해보면 동시에 두개가 접속돼 있는 것을 알 수 있음. 이 중 안중요하다 생각되는 것의 우클릭 > 세션종료 를 하면 kill이 되며 DeadLock이 풀림. [Transaction Isolation의 단계] - Read Uncommitted : 트랜잭션에서 처리중인, 아직 커밋되지 않은 데이터를 다른 트랜잭션이 읽는 것을 허용. Oracle은 미지원. - Read Committed : 독립성. 트랜잭션이 커밋되어 확정된 데이터만 읽는 것을 허용. 이것이 가장 합리적인 버전. 대부분 DBMS가 지원 - Repeat Read : 선행 트랜잭션이 읽은 데이터는 트랜잭션이 종료될 때까지 후행 트랜잭션이 갱신, 삭제하는 것 불허 ...