본문 바로가기

✨ DBMS/Oracle19

[Oracle / SQL] 뷰(VIEW)의 정의와 생성하는 방법 뷰(VIEW) 란? 하나 이상의 기본 테이블이나 다른 뷰를 사용해 생성되는 가상의 테이블 공간이다. 모든 데이터에서 일부만 뽑아서 사용할 수도 있으며, 이때 뷰를 정의한 기본 테이블에서 무결성 제약조건은 유지된다. 뷰(VIEW)를 만들 수 있게 권한주는 방법 HTML 삽입 미리보기할 수 없는 소스 이는 SYSTEM 계정에서 뷰를 만들 수 있는 권한을 만들어주지 않아서 이다. SYSTEM모드로 가서 MYDB에 뷰를 만들 수 있는 권한을 만들어준다. HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 이거는 VIEW이다. TABLE이 아니다. 뷰는 SELECT 한 결과를 바탕으로 뷰를 만들라는 것이다. 즉, 뷰는 데이터가 들어간게 아니다. 가상의 공간으로, 그냥 쿼리 실행하는 것이.. 2023. 3. 8.
[Oracle / SQL] 다중 INSRT 문법 UNION ALL HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 INSERT INTO를 이용해 이와같이 데이터 하나를 넣어줄 수 있다. 아래에서 다중 데이터를 넣어보자. HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 위와 같이 UNION ALL을 사용하여 여러 건을 한 테이블에 한번에 INSERT를 할 수 있다. 대량의 데이터를 테이블에 INSERT 해야하는 상황이라면 service에서 for문을 이용해 INSERT 값을 계속 전달해줄 수 있다. 하지만 속도가 굉장히 느리다. 따라서 대량의 데이터를 전달할 때 foreach를 사용해 한번에 insert하는 방식으로 사용하자. mapper에서 대략 이런식으로 sql 쿼리를.. 2023. 3. 6.
[Oracle / SQL] 조인(JOIN) - 서브쿼리 서브쿼리란? 한줄로 요약해 말하자면, SQL 문에 포함되어 있는 또 다른 SQL 문이다. HTML 삽입 미리보기할 수 없는 소스 Q1. 김사랑 사원과 같은 급여를 갖는 사원의 모든 정보 조회 1. 김사랑의 데이터가 어떤지 먼저 알아보자. HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 이와 같이 WHERE절 안에 조건을 줄 때 ( ) 소괄호 안에 다시한번 쿼리 문을 넣어 만들어 줄 수 있다. Q2. 강혜정 사원과 같은 부서에서 근무하는 사원들의 모든정보 조회 1.먼저, 강혜정 사원이 어떤 부서에서 일하는지를 먼저 알아야한다. HTML 삽입 미리보기할 수 없는 소스 이후 나온 부서를 조건으로 주는 서브 쿼리를 넣어주면 쉽게 풀어볼 수 있다. HTML 삽입 미리보기할 수 없는 .. 2023. 3. 3.
[SQL] 제약조건 (CONSTRAINT)가 뭘까? 어떻게 사용할까? (제약조건) CONSTRAINT 이란? 테이블의 해당 컬럼에 의도하지 않은 데이터가 입력/변경/삭제 되는 것을 방지하기 위해 테이블 생성, 수정, 삭제할 때 설정하는 조건이라고 볼 수 있다. 즉, 데이터의 무결성을 지키기 위해 제한된 조건이다. 위와 같이 SHOP_MEMBER 테이블을 생성후, INSERT INTO를 이용해 데이터를 넣었다. 여기서 같은 값으로 한번 더 삽입해주었다. 오류가 난걸 보면 ●●● 제약 조건 SYS_C007395 에 위배가 뜬다고한다. 위와 같이 테이블의 제약조건에 들어가서 같은 이름을 살펴보면, 이렇게 확인할 수 있는건, 제약조건에 이름을 주어 어디서 오류가 발생했는지 확인할 수 있다. 이와같이 CONSTRAINT는 제약조건을 설정해 주는 것이다. 기본키와 같이 많이 사용될 .. 2023. 3. 2.