gambae programing

7. 데이터 조작 본문

Database/Sql

7. 데이터 조작

gambae 2022. 7. 7. 16:48

insert

insert into table ( column 1 , column2)
values (value1,value2)
  • insert 문을 사용하여 테이블에 새행을 추가
  • insert 문으로는 한 번에 한 행만 추가
  • 각 열에 대한 값을 포함하는 새 행을 삽입  
  • 테이블 열의 기본 순서대로 값을 나열
  • values값 들은 insert into 뒤에 나오는 열들의 순서,갯수,데이터타입에 맞게 작성

예외적으로 여러 행을 한 번에 추가 하고 싶을때는 아래 형식을 사용

update

update table
set column = value  // 수정할 컬럼,값
where condition  // 수정할 위치
  • update 문을 사용하여 기존 행을 수정
  • 필요한 경우 한 번에 여러 행을 갱신
  • where 절을 생략하면 테이블의 모든 행이 수정

delete

delete  table
where condition;
  • delete 문을 사용하여 테이블에서 기존 행을 제거
  • where 절을 생략하면 테이블의 모든 행이 삭제

트랜잭션

  • 더 이상 분할할 수 없는 최소 수행 단위
  • 밀접하게 연관된 작업을 수행하기 위해 한 개 이상의 데이터 조작 명령어 (DML)로 이루어진 sql문 덩어리
  • 트랜잭션을 제어하기 위해 사용하는 명령어는 TCL
  • 트랜잭션은 데이터베이스 계정을 통해 접속하는 동시에 시작
  • TCL를 실행하면 기존 트랜잭션은 끝나고 , 새로운 트랜잭션이 다시 시작

commit 또는 rollback 실행 이전의 데이터 상태

  • 데이터를 이전 상태로 복구할 수 있음
  • 현재 사용자는 select 문을 사용하여 dml 작업 결과를 검토할 수 있음
  • 현재 사용자가 사용 중인 dml 문의 결과를 다른 사용자는 볼 수 없음
  • 관련 행이 잠기므로 다른 사용자는 관련 행의 데이터를 변경할 수 없음

commit 실행 이후의 데이터 상태

  • 데이터 변경 내용이 데이터베이스에 영구히 저장
  • 데이터의 이전 상태는 완전히 사라짐
  • 모든 사용자가 결과를 볼 수 있음
  • 관련 행 잠금이 해제되어 다른 사용자가 행을 조작할 수 있음
  • 모든 저장점이 지워짐

rollback 실행 이후의 데이터 상태

  • rollback 문을 사용하여 보류 중인 변경 내용을 모두 버림
  • 데이터 변경이 취소
  • 데이터가 이전 상태로 복구
  • 관련 행에 대한 잠금이 해제

 

 

 

 

 

'Database > Sql' 카테고리의 다른 글

9. 제약 조건  (0) 2022.07.11
8. 테이블 생성 및 관리  (0) 2022.07.11
6. 서브 쿼리  (0) 2022.07.06
5. 그룹 함수를 사용한 데이터 집계  (0) 2022.07.05
4. 여러 테이블의 데이터 표시  (0) 2022.07.03
Comments