gambae programing
7. 데이터 조작 본문
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