이전에 전공에서 '데이터베이스'라는 과목을 공부하면서, SQL 언어를 접한 적이 있다.

스프링부트를 공부하면서 프로젝트도 하면서 데이터를 능숙하게 처리하고 싶다는 생각으로 Querydsl을 공부하고 싶었다. 근데 찾아보면서 sql에 대해서 어느정도 알고나서 시작하는 걸 추천한다는 정보를 얻게 되었다.

때마침 홍팍 채널에서 간단하게 SQL을 강의로 정리해둬서 강의를 듣고 복습 겸 이곳에다가 정리하려고 한다.

 

  • SQL이란?

관계형 데이터베이스 관리 시스템(RDBMS)의 데이터들을 관리하기 위해 설계된 특수 목적의 프로그래밍 언어이다.

*데이터베이스(DB)는 데이터 저장 창고이다. 

 

*데이터베이스

여러 사람이 공유하여 사용할 목적으로 체계화하여 통합, 관리하는 데이터의 집합이다. 몇 개의 자료 파일을 조직적으로 통합하여 자료 항목의 중복을 없애고, 자료를 구조화하여 기억시켜 놓은 자료의 집합체라고 할 수 있다.

공유하는 공동 자료로서 각 사용자는 같은 데이터라도 각자의 응용 목적에 따라 다르게 사용할 수 있다.

:: 실시간 접근성 | 지속적인 변화 | 동시 공유 | 내용에 대한 참조 | 데이터 논리적 독립성

:: 장점 

  1. 데이터 중복 최소화
  2. 데이터 공유, 표준화 가능
  3. 일관성, 무결성, 보안성 유지
  4. 최신 데이터 유지
  5. 데이터의 논리적, 물리적 독립성
  6. 용이한 데이터 접근
  7. 데이터 저장 공간 절약

:: 단점

  1. 데이터베이스 전문가 필요
  2. 많은 비용 부담
  3. 데이터 백업과 복구가 어려움
  4. 복잡한 시스템
  5. 대용량 디스크로 액세스가 집중되면 과부하 발생

(가장 중요하다고 생각하는) 이 공부를 왜 배울까?

:: 개발자와 데이터베이스 관리자는 필수로 배워야 한다. 프로그램에서 사용하는 데이터를 관리해야하기 때문에, 올바른 의사결정을 위해서는 데이터 관리가 중요하다.

  • 참고

https://ko.wikipedia.org/wiki/SQL 

https://ko.wikipedia.org/wiki/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4

https://www.youtube.com/watch?v=b9jTs2-X4F0&list=PLyebPLlVYXChdBToTPrmyePWczWe3l59m 

유튜버 홍팍 강의