일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 스프링 프로젝트 설정
- oracle 설치방법
- 스프링 게시판 구현
- 스프링 업로드
- 이미지 출력
- Bcrypt
- arraylist
- 스프링 쇼핑몰 프로젝트
- 삭제 구현
- 스프링 메일 전송
- 쇼핑몰 프로젝트
- 스프링 프로젝트 기본 설정
- 정규표현식
- 로그아웃 기능 구현
- 스프링 프로젝트
- 스프링 쇼핑몰
- spring 쇼핑몰
- 파일 업로드
- 스프링 이미지
- 인증번호 전송
- 회원가입 기능
- 스프링 파일 삭제
- 로그인 기능
- 스프링 HikariCP
- BCrypt 적용
- ResponseEntity
- 스프링 게시판
- 쇼핑몰 포트폴리오
- spring 프로젝트
- 스프링 포트폴리오
- Today
- Total
Kim VamPa
[Oracle 기본사용법][03] UPDATE(행수정), DELETE(행삭제), DROP(테이블 삭제) 본문
"생활코딩 Oracle"을 개인 공부 후 자료를 남기기 위한 목적이기에 내용 상에 오류가 있을 수 있습니다.
목표
- UPDATE, DELETE, DROP 명령어에 대해 공부합니다.
- DELETE, DROP에 대해 명확히 이해합니다.
*해당 글의 실습은 Oracle XE버젼을 환경을 바탕으로 진행 행하였습니다..
목차
1. UPDATE
2. DELETE
3. DROP
4. DELETE vs DROP
0. 실습에 사용하는 표(Table)
앞의 글 [02]의 표를 기준으로 하겠습니다.
[표 1]
테이블 이름 : topic
id | title | description | created |
1 | ORACLE | ORACLE is ... | 2020.04.03 |
2 | MySQL | MySQL is .... | 2020.04.03 |
3 | NoSQL | NoSQL is ... | 2020.04.03 |
*COMMIT 명령어
- 모든 작업을 정상적으로 처리하겠다고 확정하는 명령어입니다.
- 내용을 삽입, 수정, 삭제 명령어(Transaction 명령어)를 수행한 후 반드시 commit;명령어를 실행해주어야만 데이터베이스에 적용이 됩니다.
- commit 명령을 하지 않고 종료 시엔 실제 DB에 적용되지 않습니다.
1. UPDATE
UPDATE 테이블명 SET 지정컬럼명 = 수정내용 WHERE 컬럼조건;
- 특정 테이블에서 조건을 만족하는 행에서 지정 컬럼을 수정합니다.
- 2개이상의 컬럼을 수정 시 ","를 붙여서 다음 수정 내용을 작성하면 됩니다.
실습
1. topic테이블에서 id가 3인 행중 title칼럼을 'MSSQL', description칼럼을 'MSSQL is..." 로 변경합니다.
UPDATE topic SET title = 'MSSQL', description = 'MSSQL is ...' WHERE id = 3;
- 정상적으로 요청한 명령이 수행될 시 '업데이트되었습니다'라는 문구가 뜹니다.
- 데이터가 등록, 수정, 삭제가 있을 시엔 반드시 commit;을 해줍니다.
- 변경된 내용이 적용되었는지를 확인하기 위해 "SELECT * FROM topic;"를 쳐서 확인해봅니다.(그림 1-2 참고)
- 결과물을 보시면 'NoSQL' => 'NSSQL' / 'NoSQL IS ...' => 'NSSQL IS ...'로 변경되신 것을 확인하실 수 있습니다.
2. DELETE
1.DELETE FROM 테이블명;
2.DELETE FROM 테이블명 WHERE 조건;
- DELETE는 테이블에 등록된 행을 삭제하는 명령어입니다.
- 1번의 경우 해당 테이블의 모든 행을 삭제합니다.
- 2번의 경우 해당 테이블 중 조건을 만족하는 행만 삭제를 합니다.
실습
1. topic 테이블(표1)에서 id가 3인 행을 삭제합니다.
DELETE FROM topic WHERE id = 3;
- 정상적으로 명령이 실행되었을 시 "삭제되었습니다"라는 문구가 뜹니다.
- 해당 명령을 실행 후 "commit;" 명령어를 요청해야만 해당 삭제명령이 데이터베이스에 적용이 됩니다.
- 변경된 내용이 적용되었는지를 확인하기 위해 "SELECT * FROM topic;"를 쳐서 확인해봅니다.(그림 2-2 참고)
- 결과 창을 보시면 테이블의 모든 데이터를 검색을 요청하였음에도 삭제를 진행한 행(id=3)을 제외한 행들만 검색된 것을 보실 수 있습니다.
3. DROP
DROP TABLE 테이블명;
- 테이블을 통째로 삭제를 요청하는 명령어입니다.
실습
1. topic테이블(표1) 삭제를 요청합니다.
DROP TABLE topic;
- 삭제요청이 정상적으로 진행 시 "테이블이 삭제되었습니다"라는 문구가 뜹니다.
- 테이블 삭제요청은 commit 명령어가 필요 없습니다.
- 삭제가 정상적으로 진행되었는지 확인하기 위해 검색 명령어(SELECT * FORM topic;)를 실행해봅니다.
- 결과창을 보시면 테이블의 모든 정보 검색을 요청하였음에도 테이블이 존재지 않기 때문에 오류가 발생한 것을 보실 수 있습니다.
3. DELETE vs DROP
- DELETE
- 테이블 안에 존재하는 데이터를 삭제하는 명령어입니다.
- 테이블 안의 모든 데이터가 삭제되어도 테이블은 존재합니다.
- 적용을 위해선 commit; 명령어가 반드시 필요합니다. - DROP
- 테이블 자체를 삭제하는 명령어입니다.
- commit; 명령어를 실행하지 않아도 해당 명령이 적용됩니다.
Reference
Date
- 2020.04.06 작성