경기도 인공지능 개발 과정/SQL

SQL mysql 실습 셋팅

agingcurve 2022. 4. 20. 17:59
반응형

# 새로운 manger 관리자 생성

CREATE USER "manger" @ "%" IDENTIFIED BY "1234";

 

# 생성한"manger"관리자 계정에 권한을 부여함

GRANT ALL ON *.* TO "manager" @ "%" WITH GRANT OPTION;

# univdb 생성

CREATE DATABASE IF NOT EXISTS univDB;

 

use univdb;

CREATE TABLE 과목
( 과목번호 char(4) NOT NULL PRIMARY KEY, 
  이름 VARCHAR(20) NOT NULL, 
  강의실 CHAR(3) NOT NULL,
  개설학과 VARCHAR(20) NOT NULL,
  시수 INT NOT NULL ) ; 

CREATE TABLE 학생
( 학번 CHAR(4) NOT NULL,
  이름 VARCHAR(20) NOT NULL,
  주소 VARCHAR(50) NULL DEFAULT '미정', 
  학년 INT NOT NULL,
  나이 INT NULL,
  성별 CHAR(1) NOT NULL,
  휴대폰번호 CHAR(14) NULL, 
          소속학과 VARCHAR(20) NULL,
  PRIMARY KEY (학번), 
          CONSTRAINT CK_학생_1 CHECK (학년 >= 1 AND 학년 <= 4),  
  UNIQUE (휴대폰번호) ) ; 

CREATE TABLE 수강
( 학번 char(6) NOT NULL,
  과목번호 CHAR(4) NOT NULL,
  신청날짜 DATE NOT NULL,
  중간성적 INT NULL DEFAULT 0,
  기말성적 INT NULL DEFAULT 0, 
  평가학점 CHAR(1) NULL,        
  PRIMARY KEY(학번, 과목번호), 
  FOREIGN KEY(학번) REFERENCES 학생(학번) 
ON UPDATE CASCADE ON DELETE CASCADE, 
  FOREIGN KEY(과목번호) REFERENCES 과목(과목번호) 
ON UPDATE CASCADE ON DELETE CASCADE,
  CHECK (평가학점 IN (‘A’, ‘B’, ‘C’, ‘D’, ‘F’)) ) ; 

INSERT INTO 학생
VALUES ('s001', '김연아', '서울 서초', 4, 23, '여', '010-1111-2222', '컴퓨터') ;
INSERT INTO 학생(학번, 이름, 주소, 학년, 나이, 성별, 휴대폰번호, 소속학과)
VALUES ('s002', '홍길동', DEFAULT, 1, 26, '남', NULL , '통계') ;
INSERT INTO 학생(학년, 나이, 성별, 소속학과, 학번, 이름)
VALUES (3, 30, '남', '정보통신', 's003', '이승엽') ;
INSERT INTO 학생
VALUES ('s004', '이영애', '경기 분당', 2, NULL, '여', '010-4444-5555', '정보통신') ;
INSERT INTO 학생
VALUES ('s005', '송윤아', '경기 분당', 4, 23, '여', '010-6666-7777', '컴퓨터') ;
INSERT INTO 학생
VALUES ('s006', '홍길동', '서울 종로', 2, 26, '남', '010-8888-9999', '컴퓨터') ;
INSERT INTO 학생
VALUES ('s007', '이은진', '경기 과천', 1, 23, '여', '010-2222-3333', '경영') ;

INSERT INTO 과목
VALUES ('c001', '데이터베이스', 126, '컴퓨터', 3) ;
INSERT INTO 과목
VALUES ('c002', '정보보호', 137, '정보통신', 3) ;
INSERT INTO 과목
VALUES ('c003', '모바일웹', 128, '컴퓨터', 3) ;
INSERT INTO 과목
VALUES ('c004', '철학개론', 117, '철학', 2) ;
INSERT INTO 과목
VALUES ('c005', '전공글쓰기', 120, '교양학부', 1) ;

INSERT INTO 수강
VALUES ('s001', 'c002', '2019-09-03', 93, 98, 'A') ;
INSERT INTO 수강
VALUES ('s004', 'c005', '2019-03-03', 72, 78, 'C') ;
INSERT INTO 수강
VALUES ('s003', 'c002', '2017-09-06', 85, 82, 'B') ;
INSERT INTO 수강
VALUES ('s002', 'c001', '2018-03-10', 31, 50, 'F') ;
INSERT INTO 수강
VALUES ('s001', 'c004', '2019-03-05', 82, 89, 'B') ;
INSERT INTO 수강
VALUES ('s004', 'c003', '2020-09-03', 91, 94, 'A') ;
INSERT INTO 수강
VALUES ('s001', 'c005', '2020-09-03', 74, 79, 'C') ;
INSERT INTO 수강
VALUES ('s003', 'c001', '2019-03-03', 81, 82, 'B') ;
INSERT INTO 수강
VALUES ('s004', 'c002', '2018-03-05', 92, 95, 'A') ;

# univdb 생성
CREATE DATABASE IF NOT EXISTS univDB;

'경기도 인공지능 개발 과정 > SQL' 카테고리의 다른 글

[SQL] 데이터 그룹  (0) 2022.08.12
SQL SQLite 사용  (0) 2022.04.29
SQL Mongo DB 활용  (0) 2022.04.28
SQL 활용  (0) 2022.04.22
SQL 기초  (0) 2022.04.22