2025-4-9 16일차

심서진·2025년 4월 9일

수업 정리

DB(Database)

  • 데이터들의 저장소
    -Data ? -> 정보, 통계, 이것도 데이터고 저것도 데이터라서

  • DB의 종류가 많다

  • DBMS(Database Management System) = 데이터베이스를 관리하는 시스템
    -DBMS의 유형이 많다
    -DBMS의 유형 : 계층형, 망형, 네트워크형, 관계형

  • 관계형 데이터베이스(RDBMS)
    -표의 형태(행과 열로 이루어진 자료)
    -엑셀과 유사함 그래서 엑셀과 호환되는 경우가 많음

  • DB의 종류와 DBMS의 종류는 전혀 다르다

  • DB의 종류 : orascle, MySQL, MSSQL, PostgreSQL, tibero
    -Oracle - 대중적으로 많이 사용하지만 유료, 기본용량이 큼, 규모가 큰 프로젝트에 적합
    -MySQL - 무료, 기본용량이 작음, 상대적으로 규모가 작은 프로젝트에 적합
    -PostgreSQL - 많이 떠오르는 중, 공간 정보 데이터의 처리

  • DB는 엄청 많은 종류를 가지고 있고 그 많은 종류를 우리가 실제로 써야 하는데 DBMS라는 시스템이 각 DB마다 따로 있다

  • 시스템을 다루는 방법이 SQL을 기반으로 하기 때문에 매번 새로 배울 필요는 없음

  • MySQL 사용예정
    -DB서버 / 클라이언트(DB 서버에 접속하는 것)
    -DB서버 역할, 기본 DBMS 역할을 해줄 프로그램 설치 - xampp
    -MySQL 서버를 켰다 껐다하는 기능
    -lower_case_table_names
    테이블을 다룰 때 대소문자에 대해 어떻게 판단할 것이냐
    윈도우에서 대,소문자를 구별해서 테이블 이름을 짓겠다
    -cmd창에서 mysql(dbms)를 통해 접속한 것은 DB서버 : mysql.exe -u root
    우리가 사용할 데이터베이스(폴더)를 선택

  • DBMS
    -서버 / 클라이언트
    -MySQL
    -mySQL
    -기본 DBMS는 UI가 없어서 불편
    -UI를 가지고 있는 DBMS를 편하게 쓸 수 있게 해주는 프로그램 - sqlyog, Deaveber,heidiSQL

  • Sqlyog
    -Host Address : 주소
    내가 접속할 DB서버 주소
    개개인의 컴퓨터에 xampp설치
    각자가 각자의 DB서버 구동
    나 자신에게 접속
    나 자신(localhost = 127.0.0.1(컴퓨터의 ip 주소))
    127.0.0.1 = 컴퓨터의 ip 주소
    -root : 최상위


SQL(Structed Query Language) = 언어

  • 자바, 파이썬, C와는 다른 거지만 자바, 파이썬, C처럼 할 수 있는 게 엄청 많아짐

  • DBMS마다 SQL이 조금씩 다름

  • 표준SQL : DBMS마다 다른 SQL을 제외하고 나머지는 전부 다 동일한 SQL을 따름


서버 / 클라이언트

  • 서버
    내가 보고자 하는 영상을 선택하여 클릭(요청)
    서버한테 부탁하는 것
    해당 영상을 재생해줌(응답)

  • 클라이언트
    요청을 보내는 사람
    응답을 받는 사람


sql

#,-- : 주석

1.DDL : 데이터 정의 언어, 데이터베이스 구조에 대한 명령[ex) DB생성, 테이블 생성, DB삭제, 테이블 삭제 등] CREATE, ALTER, DROP

2.DML : 데이터 조작 언어, 데이터를 조작하는 명령[ex) 데이터 추가, 수정, 삭제, 조회 등]
UPDATE,SELECT,DELETE,INSERT

3.DCL : 데이터 제어 언어, [ex) 계정관리, 권한관리 등]
REVOKE,GRANT

4.TCL : 트랜젝션 제어 언어
ROLLBACK,COMMIT

범위 : DB -> table -> data
최초의 테이블을 생성할 때 꽤나 많은 것들을 정해야 됨

스키마 일종 -> 컬럼(열) = 속성(어트리뷰트) = 필드
메타 데이터 : 데이터들의 데이터

행(row) = 레코드 = 튜플 : 하나의 데이터

테이블 생성(Article)

  • 필수요소
    -한 개 이상의 컬럼이 무조건 있어야함
    -컬럼이 있으면 그 컬럼의 데이터 타입도 무조건 명시되어야함

CREATE TABLE article(

);

데이터 타입

  • 숫자 데이터 형식 : INT=INTEGER(정수), DOUBLE(실수)
    웹에서는 실수를 꼭 써야만 해! 가 없다

  • 문자 데이터 형식 : VARCHAR(M)-사이즈를 지정해서 써야됨, TEXT
    M : 0 ~ 65,535

  • 날짜 데이터 형식 : DATETIME - 날짜 시간 다 나옴

데이터 조회
*= 모든 것 = 모든 컬럼을 선택할 거야
article로부터 모든 것을 선택할 거야
고유한 식별값을 하는 컬럼은 앞으로 오는 게 좋음

select * from article;

테이블에 데이터를 추가(종류가 3가지 정도 있음)

INSERT INTO article
SET id = 1
, regDate = ''
, title = '제목1'
, content = '내용1';

INSERT INTO article (
id
, regDate
, title
, content
) VALUES (
3
, '2025-04-09 15:30:56'
, '제목3'
, '내용3'
)

데이터 수정

UPDATE article
SET id = 1
WHERE title = '제목1';

데이터 삭제
title이 갖고 있는 줄이 삭제됨

DELETE FROM article
WHERE title = '제목3';

0개의 댓글