DML를 이용해서 DB 사용해보자. [데이터 베이스와 테이블을 만들고 필드 추가 삭제 등을 알아본다. ]
- insert
- select - where, order by
- update
- delete
작업하기 위해 xampp control와 apache,mysql이 start되어 있어야 한다. ( DBMS 1-1 참고 )
cmd창에서 테이블 만들고 수정하려면 한줄 한줄 작업해야 한다. 한번에 명령어를 한 파일에 입력하고 실행 시키자.
[sql 일괄 실행]
작업을 위해 임의로 DBMS 폴더를 만들고 거기에 sql파일을 만들겠다.
1
2
3
4
5
6
7
8
9
10
11
|
create table mem(
num int not null auto_increment,
id char(20) not null,
pass char(20) not null,
name varchar(20) not null,
age int,
primary key(num)
);
insert into mem(id, pass, name, age) values('aa','11','sam','20');
insert into mem(id, pass, name, age) values('bb','22','robin','25');
|
sql 일괄 실행은 사용자 계정으로 접속할때 쿼리문 적용 가능하다.
( 아까 만든 sql 파일 경로를 써준다. C:\xampp\htdocs\DBMS\mem.sql )
명령어 : mysql -ucw -p1234 mrhi_db < C:\xampp\htdocs\DBMS\mem.sql
명령어 : mysql -ucw -p1234 mrhi_db
명령어 : show tables;
일괄 실행으로 이미 num 1,2는 입력되었다. 새로 추가를 해보자.
명령어 : insert into mem values('3','cc','33','kim','30');
명령어 : select *from mem;
명령어 : insert into mem values('5','dd','44','lee','40');
명령어 : select *from mem;
num은 auto_increment로 자동 카운팅 되는데, 만약 앞에서 값을 줬다면.. 그 이후 숫자는 어떻게 될까?
결론, 마지막 적용된 숫자 이후부터 카운팅 된다. ( 위에서 num 5로 주고 그 이후 추가하면 6부터 카운트 )
명령어 : insert into mem(id, pass, name, age) values('aa','11','sam','20');
DML을 이제 더 연습을 하기 위해 테이블 내용이 많은 것으로 해보자.
아래 샘플 코드를 복사하여 cmd 창에 붙여 넣기하면 저절로 다 추가가 된다.
(일괄 적용을 하면 한글 깨짐이 발생할 것이다.
이유 : cmd chcp의 값이 949 ANSI/OEM Korean (Unified Hangul Code)로 되어있는데 UTF8로 된 글을 볼 때 문제가 됨. 따라서 정상적으로 보려면 UTF8로 설정이 필요함. cmd 기본 값을 변경을 안할 것이기 때문에 복붙을 했다.)
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
create table member (
num int not null auto_increment,
id char(20) not null,
name char(20) not null,
gender char(1),
post_num char(8),
address char(80),
tel char(20),
age int,
primary key(num)
);
insert into member (id, name, gender, post_num, address, tel, age) values ('yjhwang', '황영주', 'M', '100-011', '서울시 중구 충무로1가', '234-8879', 35);
insert into member (id, name, gender, post_num, address, tel, age) values ('khshul', '설기형', 'M', '607-010', '부산시 동래구 명륜동', '764-3784', 33);
insert into member (id, name, gender, post_num, address, tel, age) values ('chpark', '박철호', 'M', '503-200', '광주시 남구 지석동', '298-9730', 34);
insert into member (id, name, gender, post_num, address, tel, age) values ('shlee', '이상훈', 'M', '503-201', '광주시 남구 도금동', '838-4347', 32);
insert into member (id, name, gender, post_num, address, tel, age) values ('jyjang', '장영숙', 'W', '606-065', '부산시 영도구 봉래동5가', '399-9809', 24);
insert into member (id, name, gender, post_num, address, tel, age) values ('yjbae', '배용진', 'M', '122-014', '서울시 은평구 응암4동', '857-5683', 30);
insert into member (id, name, gender, post_num, address, tel, age) values ('hbpark', '박혜빈', 'W', '427-760', '경기도 과천시 중앙동', '234-7677', 22);
insert into member (id, name, gender, post_num, address, tel, age) values ('mskim', '김문수', 'M', '429-020', '경기도 시흥시 신천동', '370-6003', 63);
insert into member (id, name, gender, post_num, address, tel, age) values ('bkcha', '차범길', 'M', '302-121', '대전시 서구 둔산1동', '432-9877', 49);
insert into member (id, name, gender, post_num, address, tel, age) values ('kskim', '김길수', 'M', '440-747', '경기도 수원시 장안구 파장동', '324-5875', 54);
insert into member (id, name, gender, post_num, address, tel, age) values ('srkim', '김수련', 'M', '704-701', '대구시 달서구 신당동', '987-3688', 23);
insert into member (id, name, gender, post_num, address, tel, age) values ('shlee', '이성현', 'M', '441-081', '경기도 수원시 권선구 매산로1가', '243-6844', 36);
insert into member (id, name, gender, post_num, address, tel, age) values ('hnjang', '정한나', 'W', '502-763', '광주시 서구 화정4동', '845-4547', 58);
insert into member (id, name, gender, post_num, address, tel, age) values ('mylee', '이명연', 'W', '502-791', '광주시 서구 쌍촌동', '837-9432', 33);
insert into member (id, name, gender, post_num, address, tel, age) values ('yskim', '김영숙', 'W', '429-010', '경기도 시흥시 대야동', '374-8438', 53);
insert into member (id, name, gender, post_num, address, tel, age) values ('jekim', '김정은', 'W', '503-202', '광주시 남구 원산동', '347-8873', 29);
insert into member (id, name, gender, post_num, address, tel, age) values ('yjko', '고영주', 'W', '122-020', '서울시 은평구 녹번동', '479-3874', 32);
insert into member (id, name, gender, post_num, address, tel, age) values ('cyahn', '안철영', 'M', '122-030', '서울시 은평구 대조동', '347-4687', 34);
insert into member (id, name, gender, post_num, address, tel, age) values ('jmkim', '김진모', 'M', '530-140', '전라남도 목포시 항동', '379-8349', 28);
insert into member (id, name, gender, post_num, address, tel, age) values ('ycshul', '설영찬', 'M', '606-070', '부산시 영도구 청학동', '983-8748', 41);
insert into member (id, name, gender, post_num, address, tel, age) values ('jjko', '고재진', 'M', '100-013', '서울시 중구 충무로3가', '836-4655', 28);
insert into member (id, name, gender, post_num, address, tel, age) values ('hwlee', '이현우', 'M', '606-071', '부산시 영도구 청학1동', '346-8892', 32);
insert into member (id, name, gender, post_num, address, tel, age) values ('cskang', '강찬숙', 'W', '668-890', '경상남도 남해군 설천면', '377-6879', 21);
insert into member (id, name, gender, post_num, address, tel, age) values ('ypji', '지영필', 'M', '122-040', '서울시 은평구 불광동', '366-3747', 52);
insert into member (id, name, gender, post_num, address, tel, age) values ('jbkim', '김진배', 'M', '427-600', '경기도 과천시 과천동', '382-4993', 47);
insert into member (id, name, gender, post_num, address, tel, age) values ('jepark', '박지은', 'W', '670-800', '경상남도 거창군 거창읍', '328-8743', 26);
insert into member (id, name, gender, post_num, address, tel, age) values ('jhlee', '이지현', 'W', '704-702', '대구시 달서구 월성동', '386-7988', 27);
insert into member (id, name, gender, post_num, address, tel, age) values ('bykang', '강부영', 'M', '302-120', '대전시 서구 둔산동', '798-3243', 62);
insert into member (id, name, gender, post_num, address, tel, age) values ('jymoon', '문진영', 'W', '302-122', '대전시 서구 둔산2동', '987-3248', 18);
insert into member (id, name, gender, post_num, address, tel, age) values ('jyjun', '전지연', 'W', '100-012' , '서울시 중구 충무로2가', '347-2236', 28);
insert into member (id, name, gender, post_num, address, tel, age) values ('jkko', '고진길', 'M', '122-013', '서울시 은평구 응암3동', '234-7466', 27);
insert into member (id, name, gender, post_num, address, tel, age) values ('myjung', '정명윤', 'M', '502-771', '광주시 서구 치평동', '374-8786', 47);
insert into member (id, name, gender, post_num, address, tel, age) values ('jsyou', '유지수', 'W', '502-772', '광주시 서구 치평동', '309-3897', 49);
insert into member (id, name, gender, post_num, address, tel, age) values ('dsshin', '신달성', 'W', '530-145', '전라남도 신안군 장산면', '399-8789', 53);
insert into member (id, name, gender, post_num, address, tel, age) values ('sjshin', '신수진', 'W', '606-796', '부산시 영도구 봉래동5가', '389-8930', 47);
|
테이블이 잘 추가가 됐는지 확인해 보자.
명령어 : select *from member;
select 문을 연습해보자.
해당 테이블에서
여성 회원의 아이디, 이름, 주소, 성별을 검색해보자.
해당 테이블에서
50세 이상인 남성 회원의 이름, 전화번호, 성별, 나이 검색해보자.
해당 테이블에서
20대 회원의 이름, 성별, 주소, 나이 검색해보자.
해당 테이블에서
30대 또는 50대 남성 회원의 이름, 전화번호, 나이, 성별 검색해보자.
해당 테이블에서
이름이 ‘안철영’인 회원의 일련번호, 이름, 전화번호, 주소, 우편번호, 나이, 성별 검색해보자.
해당 테이블에서
성이 박씨만 검색해보자.
해당 테이블에서
이름 가운데 글자가 '용' 인 사람을 검색해보자.
해당 테이블에서
이름이 ‘고재진’인 레코드의 전화번호를 123-4567로 변경한 뒤 데이터 확인해보자.
해당 테이블에서
30대만 member 테이블에서 지워보자.
member 테이블의 내용을 지워보자.
명령어 : delete from member;
'안드로이드 웹앱 콘테츠 개발자 양성(국비지원) > DBMS' 카테고리의 다른 글
db,php,html,script 홈페이지 1-1 (HOME, 회원가입 페이지 작업) (1) | 2020.01.08 |
---|---|
DBMS 다양한 방법 2(php 파일로 일괄 적용 PDO로 php와 DBMS 연결) (0) | 2020.01.07 |
DBMS 다양한 방법 1 (php 파일로 일괄 적용 php와 DBMS 연결) (0) | 2020.01.07 |
DBMS 1-1 (DDL를 이용 데이터 베이스와 테이블을 만들고 필드 추가 삭제) (0) | 2020.01.07 |
DBMS 종류 및 Query문 3종류 (0) | 2020.01.06 |
댓글