본문 바로가기

Web Study/DataBase21

데이터베이스 개론 & SQL - 5 SQL에서의 Null 의 의미 unknown: 알 수 없는 경우 unavailable: 이용할 수 없는 경우 not applicable: 해당 사항이 없음, 사용 불가 예를 들자면 birth_date 정보가 null 이면? 생일이 없을리는 없을테니, 생일 정보를 공개하지 않거나 아직 입력하지 않은 경우일 것이다. 그렇다면 birth_date가 null 인 A, B 가 있다면 둘은 생일이 같은 것인가? 당연히 알 수 없다. 같거나 다를 것이다. 그저 입력을 안했거나 생일을 공개하지 않았을 경우가 크다. 그럼 SQL 에서 null 을 비교연산자를 사용한다면? 정확한 결과가 도출되지 않을 것이다. select id from employee where bitrh_date = NULL; (X) select id .. 2024. 2. 5.
데이터베이스 개론 & SQL - 4 서브쿼리 서브쿼리는 복잡한 조회를 위해 쿼리 안에 넣어진 쿼리를 의미한다. select를 포함한 insert, delete, update 에도 사용이 가능하다. 반대로 바깥 쿼리문을 아웃터 쿼리라고 한다. 서브쿼리를 사용할 때 주의할 점은 괄호 안에 써줘야 한다는 점이다. 차근차근히 개념에 접근하자면, id가 13인 사람의 생일보다 빠른 생일을 가진 사람을 조회하고자 한다. 1. id = 13인 사람의 생일을 조회 select birth_date from employee where id = 13; 2. 조회 결과를 토대로 전체 조회를 실시 select id, name, birth_date from employee where (1번 조회 결과) > birth_date; 3. 위의 두 쿼리문을 합쳐, 쿼리문.. 2024. 2. 4.
데이터베이스 개론 & SQL - 3 MySQL 기반으로 강의가 진행되고 있다. 여러 엔진 중 InnoDB를 기준으로 하고 있다고 소개했다. InnoDB란? DB 엔진 중 하나로, DBMS가 데이터베이스에 대해 데이터를 삽입, 추출, 업데이트, 삭제하는 데 사용되는 기본 소프트웨어 컴포넌트이다. MySQL 5.5 버전 이후 사용되는 엔진이며 바이너리에 내장되어 있다. 해당 엔진은 트랜잭션을 지원하므로 트랜잭션 세이프 스토리지 엔진이라 한다. 대용량 데이터 처리나 다수의 사용자의 동시 접속을 가능하게 하며 파일과 파티션으로 구성되어 있는 데이터 테이블과 인덱스 테이블 공간에 저장하므로 성능이 우수하다고 한다. 그밖에 데이터 무결성에 대해 중점을 두어 보장하고 논리적인 장애 복구를 수행할 수 있다는 장점이 있으나, 데드락 발생 가능성이 있으며 .. 2024. 2. 3.
데이터베이스 개론 & SQL - 2 SQL (Structured Query Language) 현업에서 쓰이는 relational DBMS의 표준 언어이자 데이터베이스 언어의 종합(DDL+DML+VDL) relational data model SQL relation table attribute column tuple row domain domain SQL에서 relation이란 multisets of tuple로, 중복된 tuple 을 허용한다. SQL은 RDBMS의 표준 언어지만 실제 구현에 강제가 없으므로 RDBMS마다 제공하는 SQL 스펙이 조금씩 다름 시작 전, DBMS부터 다운 받기 1. MySQL https://dev.mysql.com/downloads/mysql/ MySQL :: Download MySQL Community Se.. 2024. 2. 1.