SQL 구문 - DQL 데이터질의어 : select - DML 데이터조작어 : insert, update, delete (merge) - DDL 데이터정의어 : create, alter, drop, truncate - DCL 데이터제어어 : grant, revoke GRANT 권한을 부여한다. create user 권한을 가진 소유자가 DB에 hr같은 User를 생성할 수 있다. User 생성 시 유저명과 패스워드명을 기본으로 적절한 권한을 부여해주어야 한다. 평상 시에는 hr 사용자로만 이용했었는데 권한 부여 실습을 하기 위해 sys 사용자로 권한을 바꾼다(hr에는 권한부여 권한이 없기 때문) conn sys/oracle as sysdba demo라는 유저를 만들어본다. 편의상 비밀번호도 demo로 지..
1. employees 테이블로부터 JOB_ID 값을 기반으로 모든 사원의 등급을 표시하는 query를 작성하시오. DECODE 함수와 Case 식 두 가지 방법으로 작성하시오. [Decode] SELECT job_id, decode (job_id, 'ST_CLERK', 'E', 'SA_REP', 'D', 'IT_PROG', 'C', 'ST_MAN', 'B', 'AD_PRES', 'A', '0') GRADE FROM employees; [Case] SELECT job_id, CASE job_id WHEN 'ST_CLERK' THEN 'E' WHEN 'SA_REP' THEN 'D' WHEN 'IT_PROG' THEN 'C' WHEN 'ST_MAN' THEN 'B' WHEN 'AD_PRES' THEN 'A'..
Case 식 CASE 좌변 WHEN 우변 THEN 반환 (좌변과 우변이 같으면) [ELSE] 식 END 표기된 부서에 속한 사람들의 연봉을 각각의 값으로 조정하고 나머지는 연봉 변화없이 출력 SELECT last_name, job_id, salary, CASE job_id WHEN 'IT_PROG' THEN 1.10*salary WHEN 'ST_CLERK' THEN 1.15*salary WHEN 'SA_REP' THEN 1.20*salary ELSE salary END "REVISED_SALARY" FROM employees; SELECT last_name, job_id, salary, CASE WHEN job_id = 'IT_PROG' THEN 1.1*salary WHEN job_id = 'ST_CLE..
user_constraints - 제약조건 / 제약조건유형 / 조건문 / 참조하는 곳에 선언된 제약조건명 user_cons_columns - 컬럼명 / 제약조건명 테이블에 걸린 제약조건 확인 시 두 개 다 사용해야한다. user_constraint, user_cons_columns 데이터딕셔너리로 - 쿼리구문이 실행될 때 사용자로부터 테이블명을 입력받아서 실행하고(치환변수) - 테이블 입력시 대소문자 상관없이 결과가 출력되는 구문을 작성해보자(lower) 컬럼명 / 제약조건명 / 제약조건유형 / 제약조건에 선언된 조건문 / 참조하는 곳에 선언된 제약조건명 SELECT c1.column_name, c1.constrant_name, c2.constraint_type, c2.search_condition, c..
Spring jdbc 이전까지는(몰랐을 때) DB status의 [사용자 ID]@[IP 주소] 에 있는 IP 주소를 평소에 쓰던 localhost 자리에 넣었었다. root-context.xml 이렇게 했단 소리다.. 그런데 다른 컴퓨터로 접속하니 IP 주소가 달라져 이상함을 느끼고 서치해보았더니 아래처럼 했어야 했다! 그럼 스프링과 연동 완료! Workbench 해당 사항을 완료하면 비밀번호를 입력하라고 한다. 그러면 워크벤치와 연동 완료! cmd에서 RDS에 접속하고 싶을 때는(mysql) 아래처럼 하고 비밀번호 입력하면 된다! mysql -u [ID] -p -h [엔드포인트]
팀 프로젝트를 하면서 공유 DB가 있었으면 해서 만들게 됐다. 1. AWS 가입 후 RDS 생성 https://jinny-1st.tistory.com/11 [AWS RDS] 공유DB 설정하기 1. AWS 가입하고 로그인 하기 https://aws.amazon.com/ko/ 클라우드 서비스 | 클라우드 컴퓨팅 솔루션| Amazon Web Services 제조 AWS를 활용한 Siemens의 에너지, 의료 서비스, 제조 분야 혁신 Siemens가 AWS를.. jinny-1st.tistory.com 서치해보니 EC2 관련이 많았는데 찾아봤는데도 RDS와 무슨 차이점이 있는지 잘 모르겠다. 2. RDS 보안그룹 규칙 설정 https://allonsyit.tistory.com/33 [AWS RDS] 데이터베이스 ..
Index 테이블에 저장된 행의 검색 속도를 높일 수 있는(원하는 행으로 바로 갈 수 있다) 트리 구조의 오브젝트 - 리프노드(가장 하단의 노드)에 각 행을 바로 접근할 수 있는 포인터가 있다. - DBMS에서 자동으로 사용하고 유지 관리도 해줘서 관리가 편하다. - 안 써도 상관 없지만 있으면 성능을 향상시킨다. 사용방법 : X 정의방법 : CREATE INDEX 인덱스명 ON 테이블(컬럼명), ALTER index, DROP index WHERE 절 / JOIN 조건 / 규모가 작은 테이블에 쓰기엔 굳이..? 자주 쓰지 않는 컬럼에 인덱스를 만들면 공간낭비이기 때문 => 자주 쓰는 컬럼에 만들자! 중복 가능성 있는 이름 같은 컬럼보다는 사번, 주민번호 같은 곳에서 사용하는 게 좋다. 인덱스 생성 - ..
Sequence MySQL에는 없고 Oracle에만 존재하는 Object 자동으로 고유한 번호를 반환해주는데 MySQL의 Auto-increment와 비슷하다. - 사용방법 : 시퀀스명.nextval, 시퀀스명. currval - 정의방법 : CREATE sequence, ALTER sequence, DROP sequence 시퀀스 생성 CREATE SEQUENCE dept_id_seq INCREMENT BY 10 START WITH 320 MAXVALUE 1000; 시퀀스명.NEXTVAL : 사용가능한 다음 시퀀스값 반환 (작업할 때 주로 사용) INSERT INTO departments VALUES (dept_id_seq.nextval, 'XXX', 108, 1700); 시퀀스명.CURRVAL : 현..