가쟤의 해변일기 🐳

풀스택과정 DB - DBMS | MySQL | 계정/테이블/데이터 넣기 | 기본 CRUD 본문

풀스택과정

풀스택과정 DB - DBMS | MySQL | 계정/테이블/데이터 넣기 | 기본 CRUD

바닷가쟤 2025. 5. 19. 14:45
💡 2025 05 15

1. DBMS
2. MySQL
3. 계정, 테이블, 데이터 넣기
4. 기본 CRUD

DBMS

VO + DAO = model

row/column으로 쪼갤 수 있는 데이터 : 정형 데이터

소리, 이미지, 자연어 : 비정형 데이터 → sql로 표현 X

https://code-angie.tistory.com/158

위 블로그 내용대로 mysql 설치 후

환경변수에서 Program Files/MySQL/MySQL Server 8.0/ bin 경로를 설정

cmd에서 mysql -u root -p 하고 비번 입력하면 들어가진다.

CREATE database DB명

show databases;하면 아래 그림처럼 보인다..

use mysql; 로 사용할 DB를 설정해준다.

desc 테이블;

exit;

mysql> CREATE TABLE mytable(
    -> id int(3) primary key, // 기본키 3자리수 int id 생성
    -> name varchar(10) not null, // null X, String 10자까지 생성
    -> age int(3));
Query OK, 0 rows affected, 2 warnings (0.02 sec)

PK로 잡은 컬럼 값 : null X + 중복X(unique)

desc 테이블 : 제약 조건까지 확인 가능

sql문

  • 삽입

INSERT INTO mytable (id, name, age) VALUES (1, 'James', 25);

 

행, row, Record, Tuple

열, column, Attribute, 속성

  • 조회

SELECT 컬럼 FROM mytable;

컬럼 부분에 * 를 하면 컬럼 전체를 말 함.

SELECT * FROM mytable이렇게 하면 절대 안 된다!

SELECT id, name, age FROM mytable; ← projection(디스플레이 하고자 하는 컬럼을 select절에 명시)

 

❓ 왜 후자가 더 좋은가?

  • 의도치 않은, 보안상 우려가 되는 값도 노출되어 위험하다.
  • 속도, 성능이 좋아짐

+ 마다 엔터가 예의 !

WHERE age=25 → selection : 원하는 레코드만 가져옴, 행을 제한 !

서버 실행 순서가 정말 중요하다.

가장 먼저 실행해야 하는 절은 FROM(테이블) !

FROM → WHERE → SELECT 내부 처리 순서임 !

레코드를 먼저 제어하는 것이 성능 면에서 큰 차이가 난다.

  • 추가

ALTER TABLE mytable ADD COLUMN hiredate date;

date: 날짜 타입

ALTER TABLE 테이블명

  • 업데이트

UPDATE mytable SET age=50 WHERE id=2;

  • 삭제

DELETE FROM mytable where id=3;

drop database test;

RDBMS

관계형 데이터베이스

관계가 있다 라는 말

  • 한 명의 직원은 하나의 부서에 소속되어 있다.
  • 하나의 부서에는 여러 명의 직원으로 구성되어 있다.
728x90