● DML(Data Manipulation Language)
- 데이터 조작어
1. SELECT : 조회(검색)
(1) 원하는 컬럼을 골라서 조회할 때
SELECT [컬럼명1, 컬럼명2, ...] FROM [테이블명] WHERE 조건식;
(2) 전체 컬럼을 조회할 때(대신 컬럼명을 직접 작성하는 것보다는 느리다.)
SELECT * FROM [테이블명];
2. INSERT : 추가
(1) 일부 컬럼을 생략할 수 있다.(이 때 default 제약조건이 발동된다.)
INSERT INTO [테이블명]
([컬럼명1], [컬럼명2], [...])
VALUES([값1], [값2], [...]);
(2) 모든 값을 전부 작성해야 되며, 컬럼명은 직접 작성하지 않는다.
INSERT INTO [테이블명]
VALUES([값1], [값2], [...]);
3. UPDATE : 수정
UPDATE [테이블명]
SET [기존 컬럼명1] = [새로운 값], [기존 컬럼명2] = [새로운 값], ...
WHERE 조건식;
4. DELETE : 삭제
DELETE FROM [테이블명] WHERE 조건식;
● 조건식
- 참 또는 거짓 둘 중 하나가 나오는 식
- 아래의 연산자들은 WHERE절에서 사용 가능하다.
1. >, <
- 초과, 미만
2. >=, <=
- 이상, 이하
3. =
- 같다
4. <>, !=, ^=
- 같지 않다
5. AND
- 둘 다 참이면 참
6. OR
- 둘 중 하나라도 참이면 참
실습(DML(1))
※ 이전에 생성했던 테이블(TBL_OWNER, TBL_PET)에 데이터 추가/조회/수정/삭제
1. 데이터 추가(TBL_OWNER)
INSERT INTO TBL_OWNER
VALUES('홍길동', '5111', 20, '남양주');
2. 데이터 조회(TBL_OWNER의 모든 데이터 조회)
SELECT * FROM TBL_OWNER;
![](https://blog.kakaocdn.net/dn/bjBK49/btrx3ZAJDQW/LkRnZ1E4FInpOplCv2KXlk/img.png)
3. 데이터 추가(TBL_PET)
INSERT INTO TBL_PET
VALUES(1, '고양이', '톰', 1, '방광염', '홍길동', '5111');
4. 데이터 조회(TBL_PET의 모든 데이터 조회)
SELECT * FROM TBL_PET;
![](https://blog.kakaocdn.net/dn/Cw4D1/btrx170jNXR/N6Z9SZCoJvRsKtvML0U9k1/img.png)
5. 데이터 삭제(TBL_OWNER에서 이름이 홍길동이고, 핸드폰 번호가 5111인 데이터 삭제)
DELETE FROM TBL_OWNER WHERE OWNER_NAME = '홍길동' AND OWNER_PHONE = '5111';
6. 테이블 삭제(테이블을 삭제할 때에는 FOREIGN KEY가 존재하는 테이블을 먼저 삭제한다.)
DROP TABLE TBL_PET;
DROP TABLE TBL_OWNER;
실습(DML(2))
※ 이전에 생성했던 테이블(TBL_STUDENT)에 데이터 추가/조회/수정/삭제
1. 학생 데이터 추가
INSERT INTO TBL_STUDENT
(STUDENT_NUMBER, STUDENT_CODE, STUDENT_NAME, STUDENT_MAJOR, STUDENT_BIRTH, STUDENT_COUPLE)
VALUES(1, 'kim1234', '김철수', '컴퓨터공학', TO_DATE('1988-12-04', 'YYYY-MM-DD'), 'N');
INSERT INTO TBL_STUDENT
VALUES(2, 'hong1111', '홍길동', '세무회계학', 'M', TO_DATE('2000-05-04', 'YYYY-MM-DD'), 'Y');
INSERT INTO TBL_STUDENT
VALUES(3, 'hong1234', '홍길동', '물리학과', 'M', TO_DATE('2005-05-04', 'YYYY-MM-DD'), 'Y');
2. 번호가 1번인 학생의 성별을 남자로 수정한다.
UPDATE TBL_STUDENT
SET STUDENT_GENDER = 'M'
WHERE STUDENT_NUMBER = 1;
3. 홍길동 학생은 여자친구와 헤어졌다.
UPDATE TBL_STUDENT
SET STUDENT_COUPLE = 'N'
WHERE STUDENT_NUMBER = 2;
4. 홍길동 학생이 해킹보안학과로 전과했다.
- 중복 확인을 위해 PK를 검색한다.
SELECT STUDENT_NUMBER FROM TBL_STUDENT
WHERE STUDENT_NAME = '홍길동';
- 학생 정보를 수정한다.
UPDATE TBL_STUDENT
SET STUDENT_MAJOR = '해킹보안학과'
WHERE STUDENT_NUMBER = 2;
5. 해킹보안학과를 전공한 홍길동이 자퇴했다.
- 해당 학생의 PK를 검색한다.
SELECT STUDENT_NUMBER FROM TBL_STUDENT
WHERE STUDENT_NAME = '홍길동' AND STUDENT_MAJOR = '해킹보안학과';
- 학생 정보를 삭제한다.
DELETE FROM TBL_STUDENT WHERE STUDENT_NUMBER = 2;
'웹 개발 > DBMS' 카테고리의 다른 글
[Web_DBMS] 07 (0) | 2022.04.05 |
---|---|
[Web_DBMS] 06 (0) | 2022.04.04 |
[Web_DBMS] 04 (0) | 2022.04.02 |
[Web_DBMS] 03 (0) | 2022.04.01 |
[Web_DBMS] 02 (0) | 2022.03.31 |