본문 바로가기

DBMS8

DB - Index INDEX : DBMS에서 검색속도를 높이기위한 데이터베이스 객체. : DBMS? DataBase Management System : 데이터 베이스를 관리하는 시스템. 사용자와 DB 사이에서 사용자의 요구에 따라 데이터를 생성하고 DB를 관리하는 소프트웨어. 데이터를 계층, 탐색 형식으로 저장하고 파일 시스템을 사용해 저장하며, 테이블간에는 아무런 관계가 없다. 데이터에 대한 많은 보안을 제공하지 않으며 정규화를 수행할 수 없어 데이터는 높은 중복성을 가질 수도 있다. 자세한건 다른 포스팅으로 알아보자. : RDBMS? Relational Database Management system 관계형 데이터베이스 관리시스템 : 사용이유 : SQL 서버에서 테이블을 만들고 데이터를 추가, 수정, 삭제할때 데이터의.. 2022. 3. 1.
PL/SQL ORACLE 완전 기초부터!! - 프로시저(2) : 프로시저 생성 생성은 사실 간단하다. 문법만 조금 익숙해지자. 우선 DBeaver를 사용한다면 프로시저를 생성할 수 있으나 사용해볼 수 없다. https://wakestand.tistory.com/376 DBeaver 오라클 펑션/프로시저 디버깅 방법 믿을 수 없겠지만 DBeaver에서는 오라클 프로시저 디버그를 지원하지 않기 때문에 DBeaver에서는 펑션(Function), 프로시저(Procedure) 디버그가 불가능하다 위 스크린샷이 제작자가 직접 우리는 오라클 wakestand.tistory.com 이 글을 참조했다. 가능한 방법이 있다면 알려주신다면 큰 감사 표하겠다. 글에 나오듯 SQL DEVELOP 를 사용해야한다. 우선 만드는 것을 해보자. CREATE OR REPLACE PROCEDU.. 2022. 3. 1.
PL/SQL ORACLE 완전 기초부터!! - 프로시저(1) : 프로시저란? : 저장 프로시저 ( Stored Procedure ) : SQL Server에서 제공하는 프로그래밍 기능 : 쿼리문을 하나의 메서드 방식으로 만들고 어떤 동작을 일괄적으로 처리하는 용도. : 여러 개의 컬럼을 조회하고 여러 개의 테이블을 조인하고 조건까지 넣어 하나의 쿼리를 만드는데 굉장히 긴 쿼리문이 생기게 됨. : 이러한 여러 쿼리를 사용할 때마다 긴 쿼리문을 작성한다면 불편할텐데, 이를 프로시저에 저장하고 저장된 프로시저를 호출하여 프로그래밍을 하는 것이 효율적. : 즉, 메서드 function등에 매칭이 가능할 것 같다. : 장점 1) 하나의 요청으로 여러 SQL문을 실행할 수 있다. 2) 네트워크 소요 시간 감소 동일쿼리 1000번, 2000번 호출보다 SP를 이용해 구현한다면.. 2022. 3. 1.
PL/SQL ORACLE 완전 기초부터!! - FOR, WHILE : 우선 WHILE문을 살펴보자 : 특별히 더 설명할 요소는 없는것 같다. : FOR문을 보자 역시 설명할 내용이 더 있지는 않은것 같....지않더라 이렇게는 실행되지 않는다. 다만, 이건 된다. 이 부분은 좀 아쉽다 무언가 방법이 있을것도 같다. 이렇게 변수 선언을 한 후에 넣어봐도 지금 적은 방법 외에 문자열과 같이 나타낼 수가 없는것 같다. 이는 추가적으로 알게되면 그에관한 포스팅을 하겠다. 2022. 3. 1.
PL/SQL ORACLE 완전 기초부터!! - LOOP문 : ORACLE 11XE 버전에서 작성되었습니다. : 가장 기초적인 LOOP문의 형태이다. 지금까지 글을 따라왔다면 그대로 이해할 수 있는 수준이다. LOOP로 시작하고, EXIT 로 끝을 정하는데 WHEN으로 조건을 만들어주었다. END LOOP로 LOOP를 종결지었다. 결과는 이러하다. : 두번째 방식의 LOOP도 보여드리겠다. : 두 식으로 보여드렸으나 똑같이 1 ~ 10을 출력하는 LOOP문이다. 활용하는 방식만 간단하게 테스트해보고자 한것을 같이 보여드린것으로 번거롭다면 위의 QUERY를 보시면 더 간단하다. : 마지 자바의 while, for 를 보는 듯한 두 식이였다. : 다음 글에서 진짜 WHILE과 FOR문을 다뤄보도록 하자. 2022. 2. 28.
PL/SQL ORACLE 완전 기초부터!! - CASE 문 : ORACLE 11XE 버전에서 작성되었습니다. : CASE문이다. 역시 CASE문이 어떤 것인지에 대한 설명은 생략한다. IF문때와 마찬가지로 다른 언어를 통해 먼저 익히는 것을 권장드린다. : : CASE문장의 전문이다. 개인적으로 타이핑이 귀찮다고 생각한다. SCORE를 앞으로 빼서 WHEN 구절에는 사용하지 않는 예문을 보았지만 내 환경에서는 실행에 예외가 발생했다. 뒤적뒤적 해본 결과 실행되는 코드는 이러했다. : DECLARE는 특별히 설명할 요소가 없다. 모른다면 이전 글을 읽어보시길 바란다. : BEGIN에서 CASE 구문을 시작하고 WHEN ~ THEN 구조로 조건과 실행문을 나열하고 END CASE; 로 CASE구문을 종결한다. 결과 역시 IF문때와 동일하다. 2022. 2. 28.
PL/SQL ORACLE 완전 기초부터!! - IF문 : ORACLE 11XE 버전에서 작성되었습니다. : 다른 언어를 먼저 다뤄봤을 가능성이 농후한 부분이므로 다른 언어에서 기본적으로 다뤄봤을 설명은 생략하겠다. 필요하다면 다른 언어를 먼저 배우시길 권장드린다. 이걸 첫 언어로 하는 건 개인적인 생각으로 무척 비효율적이기 때문이다. : 문장 형태부터 보여드리겠다. 아주 간단한 방식이다. DECLARE에서 SCORE 함수를 선언하면서, 80의 값을 할당했고, BEGIN의 실행부에서 IF~ ELSIF ~ ELSE ~ END IF 구조로 조건을 나누었다. DBMS_OUTPUT.PUT_LINE('A~C');로 각 조건문에 출력을 내보냈다. 여기서 2가지만 짚고간다면 끝낼 수 있다. 우리가 알고있던 ESLE IF 는 ESLIF 로 사용된다!! ESL 세글자 임을 .. 2022. 2. 28.
PL/SQL ORACLE 완전 기초부터!! - 변수 선언 : ORACLE 11XE 버전에서 작성되었습니다. : 이 글은 나와같이 여태까지 DBMS SQL문을 SELECT INSERT UPDATE DELETE문만을 사용하는 것으로 알고 있는 분들을 위한 글이다. : 나는 위 4가지 형태의 QEURY만을 접했고 알았다. 하지만 놀랍게도 ( 나한테만 ) ORACLE역시도 변수를 설정하고 함수를 설정하고 이러한 작업들을 할 수 있다. : 같이 공부해보자. : 우선 변수를 선언하는 방법이다. DECLARE 부분에서 변수를 선언한다. TEST_WORD : 변수명 VARCHAR2(100) : 타입 이렇게 기본적인 선언을 DECLARE에서 하게된다. 선언이 필요없는 경우 DECLARE부분은 비워져도 무관하다. 이후 BEGIN에 실행문이 들어가게 된다. 어떤 언어를 쓰고있었는.. 2022. 2. 28.