Database
-
Database Design using E-R model대학/데이터베이스 2023. 4. 15. 23:38
E-R model에서 E는 Entity, R은 Relationship을 지칭하는데 이 용어가 무엇을 뜻하는지를 우선 알아보자. Entity set entity(개체)란 구분이 가능한 객체로 attribute의 집합으로 표현되기도 한다. tuple과 헷갈리기 쉬운데 tuple은 실제 DB에서 사용되는 용어이고, attribute의 순서가 중요하지만, entity는 DB 설계에서 사용되는 용어이고, attribute의 순서가 중요하지 않다. 이런 entity의 집합을 entity set이라 하고, 다음과 같이 그릴 수 있다. relation과 생김새가 비슷하지만, 여기에는 표현되지 않은 attribute가 나중에 구현에 가서는 생기는 등 차이점이 존재한다는 점을 알아두자. 밑줄친 attribute는 prim..
-
SQL 중급대학/데이터베이스 2023. 4. 15. 15:25
모든 예시는 sqlite3을 기준으로 작성하였습니다. 이 포스트에서는 아래의 내용을 다룹니다. Join inner left outer right outer full outer natural on using Views update view Simple View Transactions Integrity Constraints not null primary key unique check references on (Action) Built-in Data Type date time timestamp interval julianday Large-Object Type blob clob Index Output Redirection Join join 연산은 Cartesian-Product와 Select 연산의 합으로 구현..
-
SQL 입문대학/데이터베이스 2023. 4. 12. 15:29
모든 예시는 sqlite3을 기준으로 작성하였습니다. 이 포스트에서는 아래의 내용을 다룹니다. 테이블 생성 Domain Type 테이블 업데이트 insert delete drop alter update Query select from where Relational Language DML DDL Aggregate Function avg min max sum count Window Function row_number rank 기타 Query operation like (%, _), substring, || Set operation (union, intersect, except) Set membership (in) / Set comparison (exists, unique) order by limit Null..
-
데이터베이스 개념대학/데이터베이스 2023. 4. 6. 14:24
DBMS 데이터를 CSV처럼 관리한다고 생각해보자. Artist(name, year, country) "A", 1992, "USA" "B", 1990, "KOREA" "C", 2000, "KOR" Album(name, artist, year) "song 1", "a", 1993 "song 2", "B", 1980 "song 2", "B", 1980 이런 경우 다음과 같은 문제가 발생할 수 있다. 1. country 이름의 일관성이 없다. 2. Artist 테이블에 없는 사람의 곡이 Album 테이블에 있을 수 있다. 3. 사람이 태어나기도 전에 곡이 있는, 논리적으로 맞지 않는 상황이 있을 수 있다. 4. 중복된 데이터가 존재할 수 있다. 등등, 그저 문자로 데이터를 관리하면 무결성, 유지보수 측면에서 ..