• 테이블에 새로운 데이터를 튜플(행) 단위로 입력
--INSERT 문법
INSERT INTO 테이블명 ( 컬럼명(COLUMN_LIST) )
VALUES ( 컬럼값(COLUMN_LIST에 입력할 값 리스트) );
--예시)
INSERT INTO 수강생정보 (
학생ID
, 학생이름
, 소속반
) VALUES (
'S0088'
, '김민수'
, 'H'
);
테이블에 있는 기존 데이터를 새로운 내용(SET)으로 수정
-- UPDATE 문법
UPDATE 테이블명 SET 변경컬럼 = 변경 값 WHERE 변경할 행 조건 ;
-- (예시)
UPDATE 수강생정보
SET 학생ID = ‘S0089’
, 학생이름 = ‘김민수’
, 소속반 = ‘G’
WHERE 학생ID = ‘S0088’ ;
• 테이블에 있는 기존 데이터를 튜플(행) 단위로 삭제.
-- DELETE 문법
DELETE FROM 테이블명
WHERE 삭제하고 싶은 행조건 ;
-- (예시)
DELETE FROM 성적표
WHERE 학생ID = ‘S0089’ ;
( INSERT , UPDATE , DELETE )
/*1.오늘 새로운 직원이 입사하였습니다. 아래 데이터를 확인하여
직원 테이블에 정보를 입력해주세요. 자바에서 넘어온 데이터
(입력되지 않은 성별 컬럼의 경우 NULL 값이 들어가도록 해주세요.)
직원ID : 'A1000'
패스워드 : 'hello1000'
이름 : '신캐릭'
나이 : 29
입사일시 : 현재시점을 넣을 수 있게 SYSDATE 로 값 대입
주민등록번호 : '950120-1566221'
연봉 : 3500
부서id : 'D006'
*/
INSERT INTO 직원(
직원ID
, 패스워드
, 이름
, 나이
, 입사일시
, 주민등록번호
, 연봉
, 부서ID
) VALUES (
'A1000'
, 'hello1000'
, '신캐릭'
, 29
, SYSDATE
, '950120-1566221'
, 3500
, 'D006'
) ;
/*2.위에서 입력한 'A1000' 직원의 정보를 수정해주세요.
(수정 정보)
성별 : '남'
부서ID : 'D005'
패스워드 : 'hello1000!!!'
*/
UPDATE 직원
SET 성별 = '남'
, 부서ID = 'D005'
, 패스워드 = 'hello1000!!!'
WHERE 직원ID = 'A1000' ;
/*3.위에서 입력한 'A1000' 직원이 오늘 퇴사를 하였습니다.
해당 직원정보를 직원 테이블에서 삭제(DELETE) 해주세요.*/
DELETE FROM 직원
WHERE 직원ID = 'A1000' ;
/*4.퇴사한 A1000 대신에 새로운 직원이 입사를 하였습니다.
이번에는 직원정보와 함께 연락처 정보와 주소 정보가 함께 들어왔습니다. 반드시 아래의 순서로 데이터를 INSERT 해주세요.
(1)직원 테이블 -> (2)직원연락처 테이블 -> (3)직원주소 테이블
직원ID : 'A2000'
패스워드 : 'hello222'
이름 : '이홍시'
나이 : 40
입사일시 : 현재시점을 넣을 수 있게 SYSDATE 로 값을 넣어주세요.
주민등록번호 : '830220-1566221'
연봉 : 5600
부서id : 'D006'
핸드폰번호 : '010-5959-1111'
집주소 : '운천로 123'
*/
INSERT INTO 직원(
직원ID
, 패스워드
, 이름
, 나이
, 입사일시
, 주민등록번호
, 연봉
, 부서ID
) VALUES (
'A2000'
, 'hello222'
, '이홍시'
, 40
, SYSDATE
, '830220-1566221'
, 5600
, 'D006'
) ;
INSERT INTO 직원연락처(
직원ID
, 구분코드
, 연락처
) VALUES (
'A2000'
, '휴대폰'
, '010-5959-1111'
) ;
INSERT INTO 직원주소(
직원ID
, 구분코드
, 주소
) VALUES (
'A2000'
, '집'
, '운천로 123'
) ;
/*5.2023년을 맞이해 성적표 테이블의 모든 데이터를 초기화하려고 합니다. 성적표 테이블의 모든 데이터를 삭제해주세요. */
DELETE FROM 성적표;
/*6.직원ID가 'A2000' 인 직원의 집전화 번호는 '062-123-1111' 입니다. 이 데이터를 직원연락처 테이블에 입력해주세요. */
INSERT INTO 직원연락처 (
직원ID
, 구분코드
, 연락처
) VALUES (
'A2000'
, '집전화'
, '062-123-1111'
) ;
/*7.직원 'A2000' 이 가지고 있는 휴대폰 연락처는 '010-5959-1111' 입니다. 그런데 이번에 휴대폰을 바꿔서 번호가 '010-3333-5959' 로 변경이 되었습니다. 변경된 핸드폰 번호가 반영되도록 휴대폰 연락처를 수정해주세요. */
UPDATE 직원연락처
SET 연락처 = '010-3333-5959'
WHERE 구분코드 = '휴대폰'
AND 직원ID = 'A2000';
/*8.직원주소 테이블에서 직원ID 가 'A0011' , 'A0012' , 'A0013' , 'A2000' 인 대상을 삭제해주세요.
[ 힌트 : IN 연산자 활용 ]
DELETE 의 경우 조건에 맞는 행이 없으면 0행이 삭제되었습니다 라고 출력되고 오류를 발생시키지는 않습니다. (즉, 정상 케이스입니다) */
DELETE FROM 직원주소
WHERE 직원ID IN('A0011' , 'A0012' , 'A0013' , 'A2000');
/*9.직원연락처 테이블에서 직원ID 가 'A0011' , 'A0012' , 'A0013' , 'A2000' 인 대상을 삭제해주세요
[ 힌트 : IN 연산자 활용 ]*/
DELETE FROM 직원연락처
WHERE 직원ID IN ('A0011' , 'A0012' , 'A0013' , 'A2000');
/*10.직원 테이블에서 직원ID 가 'A0011' , 'A0012' , 'A0013' , 'A2000' 인 대상을
삭제해주세요
[ 힌트 : IN 연산자 활용 ]*/
DELETE FROM 직원
WHERE 직원ID IN ('A0011' , 'A0012' , 'A0013' , 'A2000');
/*11.수강생 S0001 이 최근 시험에서 국어 , 수학 , 영어 점수를 각각 90 , 85 , 70 점 맞았습니다. 이 정보를 성적표 테이블에 INSERT 해주세요.
예) 학생ID는 문자형 , 과목은 문자형 , 성적은 숫자형 컬럼입니다.
S0001 국어 90
S0001 수학 85
S0001 영어 70
*/
INSERT INTO 성적표(
학생ID
, 과목
, 성적
)VALUES(
'S0001'
, '국어'
, 90
);
INSERT INTO 성적표(
학생ID
, 과목
, 성적
)VALUES(
'S0001'
, '수학'
, 85
);
INSERT INTO 성적표(
학생ID
, 과목
, 성적
)VALUES(
'S0001'
, '영어'
, 70
);
/*12.수강생 S0001 이 본 시험에서 영어 과목에 문제가 생겨 처리 결과, 70 점에서 80 점으로 점수가 상승했습니다. 이를 반영하기 위해 S0001 학생의 영어 성적을 80으로 변경해주세요. */
UPDATE 성적표
SET 성적 = 80
WHERE 학생ID = 'S0001'
AND 과목 = '영어';