SQL 기본데이터베이스(Database)와 DBMS(Database Management System)데이터베이스 : 데이터의 집합. 꼭 형식을 갖추지 않아도 엑셀 파일을 모아 둔다면 그것 또한 데이터베이스.DBMS : 데이터를 효과적으로 관리하기 위한 시스템. 개인이 파일을 여러 개 묶어서 폴더에 보관하면 데이터를 찾고 관리하는데 많은 비용이 발생. 이를 보다 시스템 적으로 작동하게 만든 시스템을 DBMS라고 한다. (Oracle, MySQL 등)관계형 데이터베이스 구성 요소계정 : 데이터의 접근 제한을 위한 여러 업무/시스템별 계정이 존재한다.테이블 : DBMS의 DB 안에서 데이터가 저장되는 형식.스키마 : 테이블이 어떠한 구성으로 되어있는지, 어떠한 정보를 가지고 있는지에 대한 기본적인 구조를 정의..
데이터 모델과 SQL정규화모델링 시 최대한 중복 데이터를 허용하지 않아야 저장공간의 효율적 사용과 업무 프로세스의 성능을 기대할 수 있다. 이러한 중복 데이터를 허용하지 않는 방식으로 테이블을 설계하는 방식을 정규화라고 한다. 정규화(DB Normalization)의 개념하나의 엔터티에 많은 속성을 넣게 되면, 해당 엔터티를 조회할 때마다 많은 양의 데이터가 조회될 것이므로 최소한의 데이터만을 하나의 엔터티에 넣는 식으로 데이터를 분해하는 과정을 정규화라고 한다. 데이터의 일관성, 최소한의 데이터 중복, 최대한의 데이터 유연성을 위한 과정. 데이터의 중복을 제거하고 데이터 모델의 독립성을 확보한다. 데이터 이상현상을 줄이기 위한 데이터 베이스 설계 기법. 엔터티를 상세화하는 과정으로 논리 데이터 모델링 ..
SQLD 기본 및 활용SQL 기본데이터베이스(DataBase, DB): 데이터를 일정한 형태로 저장해 놓은 것. ex. 엑셀도 하나의 데이터베이스데이터베이스관리시스템(DataBaseManagementSystem, DBMS): 기존 데이터베이스 기능에 추가로 데이터 손상을 방지 및 복구(백업), 인증된 사용자만 접근 등 추가 기능을 지원하는 관리 시스템관계형 DBMS (Relational DBMS, RDBMS): 테이블로 데이터를 관리하고 테이블 간 관계를 이용해 데이터를 정의하는 방식으로 대부분의 기업이 사용하며 지금 공부하는 Oracle도 RDBMS 중 하나.테이블(Table): RDBMS에서 실제 데이터가 저장되고 조회되는 2차원 배열 형태의 저장소 공간. 엔터티, 속성, 인스턴스가 각각 DB가 이해..
데이터 모델과 SQL트랜잭션이란?데이터베이스의 논리적인 연산 단위 혹은 논리적인 업무단위.ex. 쇼핑몰은 고객이 주문을 하면 주문정보를 저장한다. 하나의 주문정보에는 여러 상품이 있어서 주문상세정보로 저장을 한다. 주문 - 트랜잭션주문 정보 저장주문 상세 정보 저장주문 완료! 이를 ERD로 표현해보면, 다음과 같은 결과를 얻을 수 있다. 주문 상세에서는 무조건 주문 정보가 필요하므로 O는 제거해준다.트랜잭션을 ERD를 보고 이해할 수 있느냐가 KEY-POINT! 식별관계 VS 비식별관계식별자관계 : 외래키(빌려온 키-FK)가 PK(식별자)의 일부분인가? - 강한연결관계비식별자관계 : 외래키(빌려온 키-FK)가 PK(식별자)의 일부분이 아닌가? - 약한연결관계IE표기법에서는 식별자관계를 실선, 비식별자관계..
데이터 모델과 SQL정규화란?데이터에 대한 중복을 제거하고 데이터가 관심사별로 처리되도록 엔터티를 나눠서 성능을 향상 시키는 활동. (단, 정규화가 대체적으로 좋은 것이며 경우에 따라서는 반정규화가 더 이득일 수도 있다.)더보기정규화시 입력/삭제/수정(DML)은 성능 향상! 조회는 성능 향상 혹은 저하 될 수 있다! 함수적 종속이란? F(X) = Y정규화를 하기 위해 알아야 하는 개념으로, 어떤 기준 값(컬럼)에 의해 데이터가 종속되는 현상을 의미한다.더보기예시. 결정자(아이디) -> 종속자(이름, 나이, 연봉, 부서, 부서명) : 아이디가 나머지 모든 컬럼을 함수종속한다. 예시. 결정자(부서) -> 종속자(부서명) : 부서가 부서명 컬럼을 함수종속한다. 정규화 과정 상세히 알아보기?차 정규화를 거쳐 ?..
DI(Dependency Injection)객체 간의 의존 관계를 외부에서 설정하고 주입해주는 프로그래밍 패턴으로, 객체가 자신이 의존하는 객체를 스스로 생성하거나 찾는 대신, 외부에서 필요한 의존성을 주입받아 사용한다. 이를 통해 객체 간 결합도를 낮추고 코드의 유연성과 테스트 가능성을 높일 수 있다. DI 컨테이너 의존성 주입을 효율적으로 관리하기 위한 도구(서비스). 객체를 생성하고, 객체 간의 의존 관계를 설정하며, 생명 주기를 관리한다. 내가 지금 프로젝트로 이용하고 있는 .NET에서는 주로 Microsoft.Extensions.DependencyInjection 라이브러리를 사용한다. 장점의존성 관리 용이: 객체 간의 의존 관계를 한 곳에서 관리할 수 있으므로, 코드 유지보수가 쉬워진다.테스..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.