목록DB (30)
Daily coding
***** Workbench 는 MySql 을 좀 더 효율적으로 사용하기 위한 프로그램이다~
***** 맨 처음 웹 프로그래밍을 시작했을 때부터 공부 + 프로젝트 용으로 사용했던 오라클 디비가 이제 익숙해져서 새로운 데이터베이스를 공부하기로 했다 (!) 맥을 사용하는 덕분에 Docker도 공부할 수 있었고.. 슬슬 취업 준비도 해야하기 때문에 비싼 오라클 말고 MySQL을 공부해서 파이널 프로젝트에 적용해보고자 한다 기본 문법은 비슷하다고 하지만 시퀀스 같이 안되는 부분도 있고 세부적인 부분이 다르기 때문에 더 헷갈릴 수도 있을 것 같당 열공해야지 ㅎ ****** 1. 설치는 홈페이지에서 https://dev.mysql.com/downloads/ MySQL :: MySQL Community Downloads The world's most popular open source database dev..
보호되어 있는 글입니다.
보호되어 있는 글입니다.
FUNCTION 매개변수, RETURN값이 반드시 있음 SELECT구문에서 많이 사용함 1. 생성 및 호출하기 CREATE OR REPLACE FUNCTION func( p_val IN NUMBER) -- 함수명 ( 매개변수명 IN 자료형 ) RETURN NUMBER -- 리턴하는 변수의 타입을 적는다 IS v_val NUMBER; -- 매개변수를 대입하여 연산을 처리할 변수 BEGIN v_val := p_val *2; RETURN v_val; END; / -- 호출하기: 함수는 EXEC로 호출 못하고 select문에서 사용가능 또는 변수 생성해서 호출 SELECT func(10) FROM DUAL; SET SERVEROUTPUT ON; -- 서버아웃풋 키기 -- 세율구하는 함수 CREA..
Procedure - block 되어있는 처리 : 함수화, 함수식으로 만들어 둠 - 공통으로 가지고 있는 요소 : 매개변수, RETURN 값 * PL 1) PROCEDURE : INSERT, DELETE, UPDATE 사용시 자주 사용함 2) FUNCTION : SELECT문을 사용할 때 자주 사용 3) TRIGGER : 함수의 일종 (확인용), UTIL 쪽으로 많이 사용함 Procedure 작성하기 SET SERVEROUTPUT ON -- 콘솔에 출력하기 위해 서버아웃풋 ON 1. PROCEDURE 생성 ( OR REPLACE : 재활용) CREATE OR REPLACE PROCEDURE myProc ( inNum IN NUMBER, outNum OUT NUMBER) -- IN / OUT : 매개변수 ..
PL (1) PL / SQL : Procedural Language / extension to Structured Query Language Procedural = 처리자 - SQL을 확장한 순차적인 언어 -> Procedure, Function, Trigger - SQL 문을 간단히 접근하기 위해서 작성해놓은 함수 + script 추가해서 사용할 수 있음 Script 구조 1. 선언부 : 사용할 변수/상수를 선언, 초기화 ( IS / DECLARE ) 2. 실행부 : 실제 처리할 Query 부분이나 제어문 등을 활용. 실제 처리 ( BEGIN ) 3. 예외처리부 : 각종 오류 부분 처리 (생략이 가능) ( EXCEPTION WHEN ~ THEN ) * SERVEROUTPUT ON / OFF SET SE..
INDEX INDEX = 색인 - 원하는 정보의 위치를 빠르고 정확하게 알아낼 수 있는 방법 -- 자동생성 : Primary Key, Unique 은 자동적으로 생성됨 -- 수동생성 : Query문으로 생성하기 생성을 했을 때 효율적인 경우 : 1. WHERE절이나 JOIN 조건안에 자주 사용되는 column 예) department_id 2. NULL 값이 많이 포함되어 있는 column 예) manager_id 3. WHERE절이나 JOIN 조건 안에 2개 이상 사용하는 column 생성을 했을 때 비효율적인 경우 : 1. 테이블의 크기(row의 개수가 작을 때) 가 적을 때 (3000개 이하) 2. 테이블이 자주 갱신될 때 -- 제약조건이 없는 EMPLOYEES 테이블 카피하기 CREATE TABL..
보호되어 있는 글입니다.
SEQUENCE sequence : 유일한 값을 생성해주는 Oracle Object 회원번호, 게시판 관리 글번호 - 순서를 관리 하기 위해 사용 - 초기화가 불가능 : 삭제 후 다시 사용해야 함 - 생성이 되면 계속 증가시킬 수 있음 자바에서도 이렇게 쓰임 int count = 1; count++; 1. sequence 생성 CREATE SEQUENCE TEST_SEQ INCREMENT BY 1 -- 증가할 값 설정 : 1 START WITH 10 -- 시작할 값 설정 : 10부터 MAXVALUE 100 -- 최대 얼마까지 증가시키는지(생략가능) MINVALUE 1; -- 최소 얼마부터 증가시키는지 (생략가능) NOCACHE -- 오라클 서버가 미리 할당하고 유지하는 여부를 결정 ( NOC..