학교를 다니고 클라이언트 개발을 하며 데이터베이스는 아직 배운적이 없었어서 MySQL , 데이터베이스 라고 하면 그냥 데이터를 저장할 수 있는 공간? 잘 모르는것, 내 분야가 아닌 것이라고 생각했었다. 하지만 강의를 듣고 난 후 데이터베이스도 재밌고 배우기 좋은 것이라는 생각이 들어 어렵게 생각하지 않게 되었고 이해하게 되었다. 강의 덕분에 나중에 회의나 현업에서 데이터 베이스, SQL 라는 단어가 나와도 의사소통에 어려움을 겪지 않을 것 같다. 강의를 들으며 내용을 정리해보았다.
1. 데이터 베이스
- 데이터는 파일, 엑셀 등 다양한 방법으로 관리가 가능하다.
- 여러 사람이 공유하여 사용할 목적으로 통합하여 관리 되며 중복없애기, 구조화 등으로 자료 검색과 갱신의 효율을 높인다.
- 많은 어플리케이션에서 효율적 데이터를 위해 데이터베이스를 활용하므로 데이터베이스는 많이 활용되고, 중요하다.
-DBMS = Database Management System
: 데이터베이스를 관리하기 위한 프로그램으로, DBMS의 종류에는 MySql, Oracle, SqlServer, PostgreSql등이 있다.
-RDBMS = Relational 으로 Data base model을 가진 DBMS
-NoSql = Relational이 아닌 data base model을 가진 DBMS
2. SQL 소개
- Structured Query Language
- 프로그래밍 언어로 데이터 베이스에 데이터를 요청하는 언어 = sql
ex) 20살이상의 서울에 거주하면서 여성인 고객의 리스트를 주세요
-> SELECT * FROM customer WHERE age >= 20 AND city='Seoul' AND gender='female'
- SQL은 문법이 단순하여 배우기 쉽다.
- 표준화 된 SQL을 따르지만, 각 DBMS마다 자기만의 방언이 있음
3. MySQL 소개
- MySQL = 오픈소스 RDBMS, 가장 많이 사용됨. 페이스북 초기로 사용됨.
- MySQL 클라이언트와 MySQL 서버의 사용을 통해 저장된 데이터를 사용할 수 있음.
4. MySQL 설치
https://dev.mysql.com/downloads/installer/
패스워드 적용하고 next 따라서 누르면 설치되어 워크벤치 나옴
5. MySQL Workbench
= MySQL을 다루기 위한 도구
- SQL작성/ 실행 / 결과 조회가 가능
- csv관리 가능, 그 외 sql 관리 기능 제공
MySQL을 설치하면 workbench가 나오고 빨간 동그라미 안의 +버튼을 눌러 db를 생성한다.
6. 데이터베이스의 주요 구성 요소
1) Schema = applicationa마다 1개
2) Table = 각 application의 세부 기능마다 정의
3) Column = 각 기능에 필요한 요소들
4) Row = 데이터 1건
7. MySQL의 데이터 타입
- 숫자 : 나이, 점수, 가격, unique id등
- 문자 : 이름, 성별, 상품명 등
- 날짜/시간 : 저장하는 시점의 날짜시간, 수정하는 시점의 날짜시간 등
8. 데이터베이스 정의하기
1) Schema 생성
좌측 빈공간에서 creat schema를 하고 이름 설정 한 후 우측 하단의 apply 를 하여 스키마를 생성한다.
그리고 좌측 탭에서 default 스키마를 설정함
2) Table 생성
스키마에서 tables 를 우클릭하여 creat table을 클릭하면 위의 창이 나와서 column, 데이터 타입을 지정해주어 활용하면 된다.
9. 데이터 조회하기
1) SELECT 문을 사용하여 테이블의 데이터를 조회 가능
SELECT에 * 를 사용하면 전체 컬럼 조회 가능
2) WHERE절을 이용한 데이터 필터링
2-1) 비교연산자를 이용한 데이터 필터링
SQL에서 '같지않다'라는 비교연산자는 '<>' 이다.
2-2) AND 연산자를 이용한 데이터 필터링
2-2) OR연산자를 이용한 데이터 필터링
- 모든 사진의 출처 == 코드프레소
- 코드프레소 Java 웹 개발 체험단 활동 중
- 코드프레소 [처음 시작하는 SQL 프로그래밍]강의 수강 중
- 코드프레소 URL: https://www.codepresso.kr/
'Study > 코드프레소 java 웹개발 체험단' 카테고리의 다른 글
[클라우드 컴퓨팅 첫 걸음]5주차: 클라우드 컴퓨팅의 개념과 AWS이해 (0) | 2022.03.18 |
---|---|
[Spring Boot를 활용한 웹 개발 초급]4주차: Spring Boot와 MyBatis의 개념, 이를 활용한 기능 개발 (0) | 2022.03.18 |
[Spring Boot 웹개발 입문]3주차: 웹개발(프론트엔드, 백엔드)의 전반적 이해 (0) | 2022.02.04 |
[JAVA프로그래밍 초급]2주차: 객체지향 (0) | 2022.01.25 |
[SW유지보수성 향상을 위한 clean code]3주차 : clean code (0) | 2022.01.24 |