1. 다음은 MySQL을 이용하여 회사 사원의 인적 사항을 관리하기 위한 DB 테이블(테이블명 : worker)의 구조이다.

필드명 데이터형 null 추가 사항 설명
num int not null primary key, auto_increment 일련번호
id char(20) not null   아이디
name char(10) not null   이름
gender char(1) not null   성별(남성: M, 여성 : F)
age int not null   나이
department char(20) not null   근무 부서
phone char(20) not null   휴대전화 번호
address char(100)     집 주소

 

① worker 테이블을 일괄 생성하기 위한 worker.sql 파일의 빈칸을 채우시오.

create (가) worker (
     num int not null (나),
     id char(20) not null,
     name char(10) not null,
     (다) char(1) not null,
     age int,
     department char(20) not null,
     phone char(20) not null,
     (라) char(100),
     primary key ( 마 )  );

② worker 테이블에 다음 데이터를 삽입하는 명령을 쓰시오.

chkim, 김창훈, M, 28, 총무부, 010-3838-8577, 경기도 용인시

③ worker 테이블의 구조를 보는 데 사용하는 명령을 쓰시오.

④ worker  테이블에 존재하는 모든 레코드의 모든 필드를 보여주는 명령을 쓰시오.

더보기

(가) : table

(나) : auto_increment

(다) : gender

(라) : address

(마) : num

 

② insert into worker (id, name, gender, age, department, phone, address) values ('chkim', '김창훈', 'M', 28, '총무부', '010-3838-8577', '경기도 용인시');

③ desc worker;

④ select*from worker;


2. 1번 문제에서 생성한 worker 테이블에 다음 표의 사원 데이터 필드를 일괄 실행하기 위한 파일을 작성하여 insert.sql로 저장하고 이를 phpMyAdmin에서 실행하시오.

id name gender age department phone address
jhjang 장종훈 M 38 총무부 010-3347-7474 서울시 강동구
jek98 안달훈 M 25 인사부 010-3744-4747 강원도 정선군
Ims2 이세영 F 48 경리부 010-3736-4784 전라북도 전주시
apple3 김소영 F 52 총무부 010-2845-8978 전라남도 순천시
sub093 김수정 M 53 홍보부 010-3834-1248 경상북도 상주시
chulsu 김철수 M 23 홍보부 010-1235-3788 경기도 오산시
yckim 김영철 M 32 인사부 010-2222-3334 경기도 용인시
yerin99 김예린 F 25 총무부 010-7777-9999 서울시 강서구
sjjung 정수정 F 35 경리부 010-3636-3563 충청남도 아산시
tuttle7 이예린 F 21 연구소 010-3756-9823 경기도 성남시
더보기

insert into worker (id, name, gender, age, department, phone, address) values ('jhjang', '장종훈', 'M', 38, '총무부', '010-3347-7474', '서울시 강동구');

insert into worker (id, name, gender, age, department, phone, address) values ('jek98', '안달훈', 'M', 25, '인사부', '010-3744-4747', '강원도 정선군');

insert into worker (id, name, gender, age, department, phone, address) values ('Ims2', '이세영', 'F', 48, '경리부', '010-3736-4784', '전라북도 전주시');

insert into worker (id, name, gender, age, department, phone, address) values ('apple3', '김소영', 'F', 52, '총무부', '010-2845-8978', '전라남도 순천시') ;

insert into worker (id, name, gender, age, department, phone, address) values ('sub093', '김수정', 'M', 53, '홍보부', '010-3834-1248', '경상북도 상주시');

insert into worker (id, name, gender, age, department, phone, address) values ('chulsu', '김철수', 'M', 23, '홍보부', '010-1235-3788', '경기도 오산시');

insert into worker (id, name, gender, age, department, phone, address) values ('yckim', '김영철', 'M', 32, '인사부', '010-2222-3334', '경기도 용인시');

insert into worker (id, name, gender, age, department, phone, address) values ('yerin99', '김예린', 'F', 25, '총무부', '010-7777-9999', '서울시 강서구');

insert into worker (id, name, gender, age, department, phone, address) values ('sjjung', '정수정', 'F', 35, '경리부', '010-3636-3563', '충청남도 아산시');

insert into worker (id, name, gender, age, department, phone, address) values ('tuttle7', '이예린', 'F', 21, '연구소', '010-3756-9823', '경기도 성남시');


3. 2번 문제에서 입력한 사원 데이터를 검색하는 SQL 명령에 관한 물음에 답하시오.

① 홍보부에서 근무하는 사원의 모든 필드를 검색하는 명령을 쓰시오.

② 20대(20~29세)인 사원의 아이디, 이름, 집 주소를 검색하는 명령을 쓰시오.

③ 경리부에 근무하는 이름에 '정'이 들어간 사원의 이름, 성별, 근무 부서, 휴대전화 번호를 검색하는 명령을 쓰시오.

④ 경기도에 사는 사원을 나이순으로 오름차순 정렬한 뒤 이름, 집 주소, 성별, 휴대전화 번호를 검색하는 명령을 쓰시오.

⑤ 여성 사원을 나이순으로 내림차순 정렬한 뒤 이름, 성별, 아이디, 휴대전화 번호, 집 주소를 검색하는 명령을 쓰시오.

⑥ 홍보부에서 근무하는 남성 사원의 이름과 휴대전화 번호를 검색하는 명령을 쓰시오.

⑦ 용인시에 사는 사원의 이름과 휴대전화 번호를 검색하는 명령을 쓰시오.

⑧ '김영철'의 휴대전화 번호를 '010-2222-3333'으로 수정하는 명령을 쓰시오.

⑨ 아이디가 'chulsu'인 사원의 나이를 '33'으로 수정하는 명령을 쓰시오.

⑩ 아이디가 'jhjang'인 레코드를 삭제하는 명령을 쓰시오.

⑪ 경리부에서 근무하는 '이세영'의 레코드를 삭제하는 명령을 쓰시오.

더보기

① SELECT num, id, name, gender, age, department, phone, address FROM worker WHERE department='홍보부';

② SELECT id, name, address FROM worker WHERE age>=20 and age<=29;

③ SELECT name, gender, department, phone FROM worker WHERE department='경리부' AND name LIKE '%정%';

④ SELECT name,address, gender, phone FROM worker WHERE address LIKE '경기도%' ORDER BY age;

⑤ SELECT name, gender, id, phone, address FROM worker WHERE gender='F' ORDER BY age DESC;

⑥ SELECT name, phone FROM worker WHERE department='홍보부' AND gender='M';

⑦ SELECT name, phone FROM worker WHERE address LIKE '%용인시';

⑧ UPDATE worker set phone='010-2222-3333' WHERE name='김영철';

⑨ UPDATE worker set age=33 WHERE id='chulsu';

⑩ DELETE from worker WHERE id='jhjang';

⑪ DELETE from worker WHERE name='이세영';


4. 명령 프롬포트에서 mydb 데이터베이스에 저장된 모든 데이터를 mydb.sql 파일에 백업하는 명령을 쓰시오. 계정은 'user', 비밀번호는 '12345'라고 가정한다.

더보기

mysqldump-uuser -p12345 mydb > mydb.sql


5. 4번 문제에서 백업한 mydb.sql 파일을 명령 프롬프트에서 복원하는 명령을 쓰시오.

더보기

mysql -uuser -p12345 mydb < mydb.sql

+ Recent posts