목록ServerSide/Database (7)
치춘짱베리굿나이스
MySQL Workbench 개요 아까까진 ERDCloud 썼잖아 ERDCloud를 쓰다가 여러가지 부분에서 불편함을 느껴 Workbench로 건너왔다 가장 불편했던 부분은 확대 - 축소가 통상적인 제스처와 달라서 계속 화면이 주체가 안될 정도로 커졌다 작아졌다 하는 부분이랑 뒤로가기 단축키가 적용이 안 된다는 점, 쿼리를 export하면 복잡한 형태로 제공돼서 후가공을 거쳐야 한다는 점 등이 있었다 그리고 지금 데이터베이스 관리 시스템으로 MySQL을 쓰고 있으니 바로 데이터베이스도 만들고 ERD도 추출하는 것이 적절하게 느껴졌다 다운로드 MySQL :: Begin Your Download MySQL :: Begin Your Download The world's most popular open sour..
ERD 그려보기 with ERDCloud ERDCloud ERDCloud 앞서 ERD의 구성 (사실상 새발표기법 원툴) 에 관해 알아보았으니 이번에는 테이블간 관계도를 직접 그려보자 ERDCloud는 웹상에서 테이블 ERD를 그리기 쉬운 툴이다 딱 있을 기능들만 있어서 draw.io처럼 복잡하지도 않고 직관적으로 관계도를 그릴 수 있다 다만 당연히 동작할 줄 알았던 단축키들이 안 먹혀서 조금 당황했따… 로그인은 구글, 페이스북, Github OAuth로 가능하다 ERD 생성 및 테이블 추가 로그인을 했다면 우상단의 + 아이콘을 누르자 로그인 아이콘은… 우상단의 문 아이콘을 누르면 된다 간단한 과정이라 굳이 추가 안 했다 ERD 생성 모달이 나온다 ERD의 이름과 태그, 공개 여부를 설정하자 태그는 사실 ..
Identifying / Non-Identifying Relationship ERDCloud에서 테이블 연결을 그리다 보면 대문짝만하게 Identifying Relationship, Non-Identifying Relationship 중 고르라고 한다 (살짝 당황함) 무엇인지 알아보자 서론 부모 테이블 (엔터티) / 자식 테이블 (엔터티) 1 : n 관계를 그린다고 할 때, 1에 해당하는 (좌측) 테이블 또는 엔터티를 부모 테이블 (부모 엔터티) 이라고 한다 n에 해당하는 (우측) 테이블 또는 엔터티를 자식 테이블 (자식 엔터티) 이라고 한다 I/E 표기법에서 I/E 표기법에선 점선도 사용할 수 있다 좌측 엔터티 (또는 테이블) 가 없어도 우측 엔터티가 존재할 수 있다는 의미이다 위의 예시에서는, 첫 번..
ERD ERD란? Entity Relationship Diagram (개체 관계 다이어그램) 데이터베이스 안에서 테이블간의 관계를 설명해주는 다이어그램이라 할 수 있다 간단한 프로젝트에서는 그다지 필요하지 않을 수 있지만, 대규모 프로젝트는 테이블끼리 연결되어 있는 경우가 상당히 많아 설계를 잘 해두지 않으면 나중에 협업할 때 설명과 인수인계가 힘들어지는 대참사가 날 수도 있다고 한다 테이블들이 특이하게 생긴 화살표로 이어져 있는 모습을 하고 있다 Entity 테이블을 구성하는 각 객체의 구성 성분이다 이름은 명사로 지어지며, 저장된 데이터에 관한 추상적이거나 실재적인 개념이 엔터티로 지정된다 말이 좀 어려운데… 테이블 안에 작성될 수 있는 ‘속성을 가질 수 있는 어떠한 개념’ 이라고 생각하면 된다 학교..
MySQL 나의SQL (아님) 오픈소스 라이선스로 무료이고, 다양한 프로그래밍 언어를 지원하며, ANSI SQL을 준수하고 비교적 빠르고 널리 쓰이는 MySQL을 잡수어보세요 이전에 사용했던 sqlite는 한 파일 = 하나의 데이터베이스 였지만 MySQL은 데이터베이스 서버를 사용하기 때문에 사용이 쫌 복잡하다 sqlite는 단순하고 빠른 구축을 원할 때 사용했지만, 데이터베이스 구조가 조금만 복잡해져도 보안상의 이슈나 동시성 문제 때문에 MySQL이 좋은 해결책이 될 수 있다 설치 및 CLI에서 사용해보기 CLI가 어렵고 복잡하다면 워크벤치를 사용하면 좋다 (GUI다!) 0. 로컬 환경에 MySQL 설치 및 설정 $> brew install mysql $> mysql -V // 버전 확인 기존의 nod..
DBMS 설명 Database Management System 데이터베이스 관리 시스템으로, 데이터의 집합을 만들고 저장 및 관리를 도와주는 툴이다 DBMS를 통해 데이터베이스를 효율적으로 관리할 수 있고, 응용 프로그램들이 쿼리문을 통해 데이터베이스에 접근할 수 있게 된다 DBMS의 종류에 따라 ANSI SQL에 추가 문법들이 더해지거나 기능이 더해져 데이터베이스를 조금 더 구체적으로 다룰 수 있기도 한다 관계형 데이터베이스에서 가장 많이 사용되는 DBMS는 오라클에서 만든 Oracle Database이고, MySQL, Microsoft SQL, PostgreSQL 등도 많이 사용된다 특징이 조금씩 다르기 때문에 사용하기 전에 구체적으로 알아보는 것이 좋겠다 장단점 장점 데이터를 보기좋게 보여준다 CL..
SQL 설명 Structured Query Language (구조적 질의 언어) 데이터베이스 상에서 자료를 처리하고, 데이터베이스에 자료를 넣거나 뺄 때, 조건에 맞는 자료 등을 가져올 때 등에 사용되는 쿼리 언어이다 표준 SQL은 ANSI SQL이 정립되어 있으며, 아래에서 설명할 DBMS에서는 이 ANSI SQL을 기본으로 지원하기 때문에 어떠한 DBMS를 선택하든 ANSI SQL을 사용하지 못하는 일은 없다 명령어의 역할에 따라 DDL, DML, DCL로 구분된다 용어 Column (컬럼) 테이블에서의 세로줄 하나하나를 컬럼이라고 한다 하나의 컬럼에는 같은 형식, 같은 필드명의 데이터들이 들어온다 JSON 으로 치면 key에 해당한다 칼럼명 = 필드명 이라고 생각하자 Row 여러 컬럼을 가진 하나의..