마리아 DB

마리아 DB 연습 - 세번째(3) scott 계정 생성 및 테이블 생성

낙산암 2022. 4. 9. 18:09

 

  - root 계정으로 'SCOTT' DATABASE를 생성하고 scott 계정에 권한 부여.

  - dochi 계정으로 TABLE 생성 및 DATA 입력하고 데이터 조회.

 

1. DB 생성 및 계정 생성

 

CREATE DATABASE scott;

-- scott 계정생성

-- 로컬에서만 접속 가능한 계정.
CREATE OR REPLACE USER 'scott'@'localhost' IDENTIFIED BY 'tiger';
-- 외부에서 접속 가능한 계정.
CREATE OR REPLACE USER 'scott'@'%' IDENTIFIED BY 'tiger';

--GRANT CREATE, ALTER, SELECT, INSERT, UPDATE, DELETE ON scott.* TO 'scott'@'localhost';
--GRANT CREATE, ALTER, SELECT, INSERT, UPDATE, DELETE ON scott.* TO 'scott'@'%';

 

grant all privileges on scott.* to 'scott'@'localhost';
grant all privileges on scott.* to 'scott'@'%';

flush privileges;


-- 권한적용
FLUSH PRIVILEGES; (잊지말고 적용 시킬것)

 

========================================================

 

2.권한 적용후 scott 으로 다시 접속 

 

 

-- DATABASE 조회

SHOW DATABASES;

-- 'SCOTT' DATABASE로 변경

 

USE SCOTT;

-- TABLE 조회 SHOW TABLES;

 

 

3. TABLE 생성

 

CREATE TABLE EMP(
   EMPNO      INTEGER NOT NULL,
   ENAME       VARCHAR(10),
   JOB        VARCHAR(9),
   MGR        INTEGER,
   HIREDATE   VARCHAR(12),
   SAL        DECIMAL(7, 2),
   COMM       DECIMAL(7, 2),
   DEPTNO     INTEGER
);
 
CREATE TABLE DEPT(
   DEPTNO     INTEGER NOT NULL,
   DNAME      VARCHAR(14),
   LOCATION   VARCHAR(13)
);

CREATE TABLE SALGRADE(
   GRADE      INTEGER NOT NULL,
   LOSAL      INTEGER NOT NULL,
   HISAL      INTEGER NOT NULL
);

CREATE TABLE BONUS (
   ENAME      VARCHAR(10) NOT NULL,
   JOB        VARCHAR(9) NOT NULL,
   SAL        DECIMAL(7, 2),
   COMM       DECIMAL(7, 2)
);

 

PK 생성

 

ALTER TABLE EMP 
   ADD CONSTRAINT EMP_PK
   PRIMARY KEY (EMPNO);

ALTER TABLE DEPT
   ADD CONSTRAINT DEPT_PK
   PRIMARY KEY (DEPTNO);

ALTER TABLE SALGRADE
   ADD CONSTRAINT SALGRADE_PK
   PRIMARY KEY (GRADE);

ALTER TABLE BONUS
   ADD CONSTRAINT BONUS_PK
   PRIMARY KEY (ENAME, JOB);

ALTER TABLE EMP
   ADD CONSTRAINT DEPT
   FOREIGN KEY (DEPTNO)
   REFERENCES DEPT (DEPTNO);

ALTER TABLE EMP
   ADD CONSTRAINT MGR
   FOREIGN KEY (MGR)
   REFERENCES EMP (EMPNO);

 

5. DATA 생성


INSERT INTO DEPT VALUES
  (10, 'ACCOUNTING', 'NEW YORK'),
  (20, 'RESEARCH',   'DALLAS'),
  (30, 'SALES',      'CHICAGO'),
  (40, 'OPERATIONS', 'BOSTON');
 
INSERT INTO EMP VALUES
  (7839, 'KING',   'PRESIDENT', NULL, '1981-11-17', 5000, NULL, 10),
  (7566, 'JONES',  'MANAGER',   7839, '1981-04-02', 2975, NULL, 20),
  (7788, 'SCOTT',  'ANALYST',   7566, '1982-12-09', 3000, NULL, 20),
  (7876, 'ADAMS',  'CLERK',     7788, '1983-01-12', 1100, NULL, 20),
  (7902, 'FORD',   'ANALYST',   7566, '1981-12-03', 3000, NULL, 20),
  (7369, 'SMITH',  'CLERK',     7902, '1980-12-17',  800, NULL, 20),
  (7698, 'BLAKE',  'MANAGER',   7839, '1981-05-01', 2850, NULL, 30),
  (7499, 'ALLEN',  'SALESMAN',  7698, '1981-02-20', 1600,  300, 30),
  (7521, 'WARD',   'SALESMAN',  7698, '1981-02-22', 1250,  500, 30),
  (7654, 'MARTIN', 'SALESMAN',  7698, '1981-09-28', 1250, 1400, 30),
  (7844, 'TURNER', 'SALESMAN',  7698, '1981-09-08', 1500,    0, 30),
  (7900, 'JAMES',  'CLERK',     7698, '1981-12-03',  950, NULL, 30),
  (7782, 'CLARK',  'MANAGER',   7839, '1981-06-09', 2450, NULL, 10),
  (7934, 'MILLER', 'CLERK',     7782, '1982-01-23', 1300, NULL, 10);
 
INSERT INTO SALGRADE VALUES
  (1,  700, 1200),
  (2, 1201, 1400),
  (3, 1401, 2000),
  (4, 2001, 3000),
  (5, 3001, 9999);
  
COMMIT;