[SQL첫걸음] 4장 데이터의 추가, 삭제, 갱신

2025. 3. 30. 17:50·도서 공부(정리)/SQL첫걸음

16강 행 추가하기 - INSERT

INSERT INTO 테이블명 VALUES (값1, 값2, ...)

데이터베이스에 행을 추가할때 사용 명령 : INSERT

DESC 테이블명; 

: 각 열이 어떤 유형의 데이터 값이 저장가능한지 알 수 있음.

추가할 때, 해당 열의 데이터 형식에 맞도록 지정해야함.

  1. 값을 저장할 열 지정하기.
    INSERT INTO 테이블명(열1,열2 ...) VALUES (값1, 값2, ...)
    지정한 열에만 값을 넣어 행 추가가 가능하다.
    따로 값을 넣어주지 않으면 NULL이 저장됨(기본값)

주의) NOT NULL 제약이 걸려있는 열은 NULL 값을 허용하지 않는다.

DEFAULT
명시적으로 값을 지정하지 않았을 경우 사용하는 초깃값. 테이블 정의할 때 지정 가능.
'DEFAULT를 명시적으로 지정하는 방법'

 INSERT INTO sample411(no, d1) VALUES(2, DEFAULT);

이러면 d1자리에 default값이 들어감.
열 지정하지 않으면 디폴트값으로 행이 추가됨.(암묵적)

 

??? 디폴트값 초기에 지정 어케함? 궁금티비

17강 삭제하기 - DELETE

DELETE FROM 테이블명 WHERE 조건식

 WHERE 안써주면 모든 행을 삭제해버리므로 꼭 작성하자.

단, ORDER BY구는 사용 불가능

어떤 행부터 삭제할 것인지는 중요하지 않으며 의미가 없기 때문.  (표준)

MySQL에서는 DELETE명령에서 ORDER BY구와 LIMIT 구를 사용해 삭제할 행 지정 가능.

 

18강 데이터 갱신하기 - UPDATE

UPDATE 테이블명 SET 열1=값1, 열2=값2, ... WHERE 조건식

DELETE와 달리 UPDATE는 셀 단위로 데이터 갱신 가능.

WHERE구 생략 시, 모든 행이 갱신됨

 

SET구를 사용해 갱신할 열과 값을 지정. 자료형에 맞는 값ㅇ들 지정해야함(=INSERT 할떄)

= 은 대입연산자. (SET구)

 

NULL로 갱신도 가능 called 'NULL  초기화'

단, NOT NULL 제약 설정은 여기에서도 적용됨! 위반 시 에러발생

 

19강 물리삭제와 논리삭제

물리삭제 

    DELETE명령을 사용해 직접 데이터를 삭제하자는 사고방식

논리삭제

    테이블에 '삭제플래그'와 같은 열을 미리 준비해두고 테이블에서 실제로 행을 삭제하는 대신,

  UPDATE 명령을 이용해 '삭제플래그'의 값을 유효하게 갱신해두자는 발상에 의한 삭제방법

실제 테이블 안에 데이터는 남아있지만, 참조할 때에는 '삭제플래그'가 삭제로 설정된 행을 제외하는 SELECT명령을 실행함. = 결과적으로 행 삭제된것처럼 보임

+ 데이터를 삭제하지 않기때문에 삭제이전의 상태로 되돌릴 수 있음

- 삭제해도 데이터베이스의 저장공간이 늘어나지 않고, 오히려 크기가 증가함에 따라 속도가 떨어짐.  

 

바탕화면에서 삭제 = 논리삭제

휴지통에서 삭제 = 물리삭제

 

 

'도서 공부(정리) > SQL첫걸음' 카테고리의 다른 글

[SQL 첫걸음] 6장 데이터베이스 객체 작성과 삭제  (0) 2025.04.06
[SQL 첫걸음] 5장 집계와 서브 쿼리  (0) 2025.03.31
[SQL첫걸음 ] 3장 정렬과 연산  (0) 2025.03.30
[SQL 첫걸음] 2장 테이블에서 데이터 검색  (0) 2025.03.23
[SQL첫걸음] 1장 데이터베이스와 SQL/ 2장 테이블에서 데이터 검색  (0) 2025.03.23
'도서 공부(정리)/SQL첫걸음' 카테고리의 다른 글
  • [SQL 첫걸음] 6장 데이터베이스 객체 작성과 삭제
  • [SQL 첫걸음] 5장 집계와 서브 쿼리
  • [SQL첫걸음 ] 3장 정렬과 연산
  • [SQL 첫걸음] 2장 테이블에서 데이터 검색
sihyes
sihyes
24학번 컴퓨터공학과
  • sihyes
    시혜적으로개발
    sihyes
  • 글쓰기 관리
  • 전체
    오늘
    어제
    • 분류 전체보기 (114)
      • 단순 설정 (10)
      • 백엔드 공부(BE, AWS) (8)
        • 로그인&회원가입 (3)
        • 파일업로드&GPT (2)
      • 컴퓨터공학과 (51)
        • 운영체제 (0)
        • Artificial Intelligence (0)
        • Java 1 & 2 (23)
        • 컴퓨터네트워크 (3)
        • 모앱JavaScript (0)
        • Data structures (9)
        • 소프트웨어공학 (5)
        • 오픈SW플랫폼 제출용 (5)
        • Python - 문해프 (1)
      • 개인 프로젝트 (2)
        • 알바솔로몬 (1)
        • PLACO 프로젝트 (0)
      • 도서 공부(정리) (20)
        • 알고리즘 코딩 테스트 자바 편 (1)
        • SQL첫걸음 (8)
        • 코딩 자율학습 스프링 부트 3 자바 백엔드 개발 .. (6)
        • Do it! 지옥에서 온 문서 관리자 깃&깃허브 .. (5)
      • 개인공부정리페이지 (12)
        • 백준 & 프로그래머스 (3)
  • 블로그 메뉴

    • 홈
    • 태그
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    ㅇ
  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.4
sihyes
[SQL첫걸음] 4장 데이터의 추가, 삭제, 갱신
상단으로

티스토리툴바