<MySQL 사용법>
C:\Program Files\MySQL\MySQL Server 5.7\bin\>mysql -u <아이디> -p
비밀번호 : 1234
mysql>
-- 사용할 DB확인?
>show databases;
-- DB간의 이동? use
>use mysql;
-- 접속 DB의 테이블 보기
>show tables;
-- 테이블의 구조보기;
>desc 테이블명;
-- 테이블에 필요한 필드만 출력?
>select 필드리스트 from 테이블명
>select host,user from user;
-- 사용자 추가
>create user 유저아이디;
>create user atom;
-- 사용자 삭제
>drop user 유저아이디;
방법1>drop user atom;
방법2>drop user 'atom'@localhost;
-- 사용자 계정에 비밀번호 부여하여 만들기
예) atom사용자의 비밀번호를 1234로 부여하고, 외부에서 접속가능하게 만들겠다.
>create user 'atom'@'%'identified by '1234';
-- 데이터베이스 생성?
>create database 데이터베이스명;
>create database insa;
-- 데이터베이스 삭제?
>drop database 데이터베이스명;
>drop database insa;
-- 사용자에게 데이터베이스 사용권한 부여?(grant)
>grant all privileges on insa.* to atom@'localhost' identified by '1234';
>flush privileges;
-- 사용자 권한 보기?(atom사용자의 localhost권한보기?)
> show grants for atom@localhost;
-- 사용자의 권한 제거?(revoke)
> revoke all on insa.* from atom@'localhost';
-------------------------------------------------------------------
(문제) 데이터베이스와 사용자 계정만들기
1. 데이터베이스명 : webdb
(답) create database webdb;
2. 계정명 : atom
(답) create user atom;
(3~4). 비밀번호 : 1234 , 접속권한은 외부에서 접속가능 : %
(답)
drop user atom;
create user 'atom'@'%' identified by '1234';
5. atom사용자가 webdb데이터베이스안의 모든 기능 사용가능하게 설정
(답)
grant all privileges on webdb.* to atom@'localhost' identified by '1234';
flush privileges;
-- 워크밴치(또는 heidiSQL)에서 atom사용자로 접속하여 작업처리한다. --
6. webdb데이터베이스안에 member테이블 생성
member테이블의 필드설계
- 아이디(m_id), 문자 20, null값 불허
- 비밀번호(pwd), 문자 20, null값 불허
- 성명(name), 문자 20, null값 불허
- 나이(age), 숫자(int), 기본값 20
- 성별(gender), 고정길이(char(2)), 기본값 : m
- 생일(birthday), 날짜형식(datetime)
- 주소(address), 문자 50
(답)
create table webdb.member (
m_id varchar(20) not null,
pwd varchar(20) not null,
name varchar(20) not null,
age int default 20,
gender char(2),
ipsail datetime,
address varchar(50)
);
8. 기본 자료 10개 등록
(답)
insert into member valuesmember('hkd1234','1234','홍길동',22,'m','2000-01-01','서울');
9. 급여필드(sal : int형식) 추가
(답)
alter table member add (sal int);
desc member;
10. 보너스필드(bonus : int 형식) 추가
(답)
alter table member add (bonus int);
desc member;
11. 부서필드추가(buser : varchar(10))
- 임의로 입력 : '총무과/인사과/생산과/영업과'
(답)
alter table member add (buser varchar(10));
desc member;
12. 직급필드 추가(jikkub : varchar(10))
- 임의로 입력 : '부장/과장/대리/사원'
(답)
alter table member add (jikkub varchar(10));
desc member;
13. 급여/보너스 는?
부장:4000000/300000, 과장:3500000/400000,
대리:3000000/550000, 사원:2500000/550000
(답)
select * from member where jikkub='부장';
update member set sal=4000000, bonus=300000 where jikkub='부장';
select * from member where jikkub='과장';
update member set sal=3500000, bonus=400000 where jikkub='과장';
select * from member where jikkub='대리';
update member set sal=3000000, bonus=550000 where jikkub='대리';
select * from member where jikkub='사원';
update member set sal=2500000, bonus=550000 where jikkub='사원';
select * from member;
14. 성별순으로 정렬하되, 같은 성별은 나이 내림차순으로 출력?
(답) select * from member order by gender, age desc;
15. 공제액은 급여의 10%로 한다.(출력자료는 이름/급여/공제액)
(답) select name,sal as '급여',sal*0.1 as '공제액' from member;
16.
select interval(5,2,4,6,8);
select interval(4,1,2,3,5,6);
select user();
--------------------------------------------------------------------
워크 밴치 이미지
'Programing > Database' 카테고리의 다른 글
sql Data [sql 실습] (0) | 2020.03.29 |
---|---|
SQL 명령어 (0) | 2020.03.29 |
DB 계정 만들기 실습 (0) | 2020.03.29 |
HeidiSQL 불러오기 (0) | 2020.03.29 |
MySQL - Workbench 사용 (0) | 2020.03.29 |