2021/09/09 4

오라클 COUNT, 널(NULL), 공백 SQL 질의

▣ 오라클 COUNT, 널(NULL), 공백 SQL 질의 집계함수 설명 COUNT(*) NULL 값을 포함한 행의 수 COUNT(표현식) 표현식의 NULL 값을 제외한 행의 수 SUM( [DISTINCT | ALL] 표현식) 표현식의 NULL 값을 제외한 합계 AVG( [DISTINCT | ALL] 표현식} 표현식의 NULL 값을 제외한 평균 MAX( DISTINCT | ALL] 표현식) 표현식의 최대값 MIN( DISTINCT | ALL] 표현식) 표현식의 최소값 * DISTINCT : 같은 값을 하나의 데이터로 간주할 때 사용하는 옵션(중복제거) 2013년 54번 정답 : 4번 1) 해당되지 않는 값 2) 의도적으로 유보한 값 3) 알 수 없는 값 4) 모르는 값이 아닌 0 0은 널이 아님 2021년..

데이터베이스 2021.09.09

조인, 서브쿼리, 집합 연산 SQL 질의 문제(오라클)

▣ 조인, 서브쿼리, 집합 연산 SQL 질의 문제(오라클) 1. 오라클 집합 연산자의 종류 집합 연산자는 4가지 종류가 있다. - UNION: 두 집합을 더해서 결과를 출력. 중복 값 제거하고 정렬함 - UNION ALL: 두 집합을 더해서 결과를 출력. 중복 값 제거 안하고 정렬 안함 - INTERSECT: 두 집합의 교집합 결과를 출력. 정렬함. - MINUS: 두 집합의 차집합 결과를 출력. 쿼리의 순서 중요함 2. 오라클 연산자 사용 조건 - 두 집합의 SELECT 절에 오는 칼럼의 개수가 동일해야 한다. - 두 집합의 SELECT 절에 오는 칼럼의 데이터형이 동일해야 한다. - 두 집합의 칼럼명은 달라도 상관없다. 2017년 57번 정답 : 4번 100, 101 동시에 만족하는 튜플이 없음 --..

데이터베이스 2021.09.09

SQL 인젝션(Injection) 보안 상의 허점

▣ SQL 인젝션(Injection) 보안 상의 허점 SQL 인젝션 (Injection) 잘못 만들어진 웹어플리케이션에서 사용자로부터 입력받은 데이터를 SQL문에 붙여서 처리할 때 해커는 임의로 SQL문을 변경하여 사용자 인증을 우회하거나 데이터베이스 정보를 취득하는 공격 Blind SQL Injection, Mass SQL Injection, CSRF(Cros-site request forgery) 대응 방법 : 사용자 입력의 필터링 SQL 에러메시지를 사용자에게 보여주지 않도록 설정 웹어플리케이션 사용하는 DB유저의 권한을 제한 - 사용자 인증을 비정상적으로 통과할 수 있다. - 데이터베이스에 저장된 데이터를 임의로 열람할 수 있다. - 데이터베이스의 시스템 명령을 이용하여 시스템 조작이 가능하다. ..

데이터베이스 2021.09.09

관계 데이터 모델의 키(Key) 후보키, 수퍼키, 기본키, 대체키, 외래키

▣ 관계 데이터 모델의 키(Key) 종류 종류 내용 후보키 (Candidate Key) 유일성과 최소성을 만족하는 키 예) , 수퍼키 (Super Key) 유일성은 있으나 최소성은 없는 키 예) 기본키 (Primary Key) 후보키 중에서 하나를 선정하여 사용하는 것 예) , 중 선정된 하나 대체키 (Alternate Key) 후보키 중 기본키로 선정된 나머지 키 기본키를 대체할 수 있는 키라는 의미 외래키 (Foreign Key) 한 릴레이션에 속한 어떤 속성 집합(FK)의 값이 반드시 다른 릴레이션의 기본키 값이어야 할 때 이 FK를 외래 키라고 함 2018년 54번 정답 : 3번 → 수퍼키 ⊃ 후보키 ⊃ 기본키 수퍼 키는 후보 키도 된다. (X) 후보 키는 수퍼 키도 된다. (O) 기본 키는 후보..

데이터베이스 2021.09.09