데이터 베이스 SQL기본에 관한 동영상.
https://www.youtube.com/watch?v=Z66quG3HBls&list=PLVsNizTWUw7Hox7NMhenT-bulldCp9HP9&index=19
위 영상을 참고로 데이터베이스 만들기
MySQL DBMS Workbench 설치법은 아래 참고.
https://ansan-survivor.tistory.com/1130
[MySQL] MySQL windows 10에 설치하기 환경 세팅하기, 오라클 DBMS 설치하기
기본 요구사항 Windows 10 64 bit. (win7은 MySQL 8.0.3 rc버전) (32bit는 MySQL 5.7.x 버전) 1. 아래 공식 다운로드 페이지에서 다운로드 (최신버전) https://dev.mysql.com/downloads/workbench/ MySQL :: Downl..
ansan-survivor.tistory.com
MySQL DBMS 구조 및 간단 사용법
https://ansan-survivor.tistory.com/1142
[MySQL] 오라클 DBMS 에서 GUI환경으로 MySQL 데이터베이스 생성하기
오라클 DBMS 소프트웨어를 이용하면 GUI환경으로 쉽게 데이터베이스를 만들 수 있다. Database 구축을 위한 아래 과정을 진행한다. 1. DBMS 설치 및 환경 구성 (GUI 환경으로 MySQL Database 구축 가능) https:/
ansan-survivor.tistory.com
회원테이블은 아이디를 Primary Key(PK)로 사용하며, 8개의 Title이 있다.
구매테이블은, 회원테이블을 Foreign Key(FK)로 아이디를 연결하며, 순번이 Primary Key(PK)로 쓴다.
구매테이블의 FK는 구매 항목이므로 해당 아이디가 여러번 나올 수 있다.
1. 새로운 db 생성.
이름은 sqldb로 했다.
CREATE DATABASE sqldb;
2. 첫번째 테이블 생성
위에서 생성한 db 내에 사용하기 때문에 USE문으로 db명을 선택해야 한다.
user에 관한 정보 "usertbl" 생성. 상단의 Title 부분만 생성하는 것이다.
USE sqldb;
CREATE TABLE usertbl -- 회원 테이블
( userID CHAR(8) NOT NULL PRIMARY KEY, -- 사용자 아이디(PK)
name VARCHAR(10) NOT NULL, -- 이름
birthYear INT NOT NULL, -- 출생년도
addr CHAR(2) NOT NULL, -- 지역(경기,서울,경남 식으로 2글자만입력)
mobile1 CHAR(3), -- 휴대폰의 국번(011, 016, 017, 018, 019, 010 등)
mobile2 CHAR(8), -- 휴대폰의 나머지 전화번호(하이픈제외)
height SMALLINT, -- 키
mDate DATE -- 회원 가입일
);
3. 두번째 테이블 생성
구매목록 관련 테이블 생성, PK으로는 구매의 순번. AUTO_INCREMENT는 자동으로 새롭게 생긴 열에 숫자를 매긴다.
맨아래 옵션으로 FOREIGN KEY 으로 reference(참조)형식으로 설정
FOREIGN KEY (FK로_사용할_타이틀) REFERENCES 다른테이블(FK로_사용할_타이틀)
CREATE TABLE buytbl -- 회원 구매 테이블(Buy Table의 약자)
( num INT AUTO_INCREMENT NOT NULL PRIMARY KEY, -- 순번(PK)
userID CHAR(8) NOT NULL, -- 아이디(FK)
prodName CHAR(6) NOT NULL, -- 물품명
groupName CHAR(4) , -- 분류
price INT NOT NULL, -- 단가
amount SMALLINT NOT NULL, -- 수량
FOREIGN KEY (userID) REFERENCES usertbl(userID)
);
4. 생성한 테이블에 값을 넣기
아래와 같이 각 테이블에 값을 넣을 수 있다. (순서대로 넣는다. 없으면 NULL을 넣으면 된다.)
INSERT INTO 테이블이름 VALUES('첫번째값', '두번째값', ... '마지막값');
AUTO_INCREMENT 옵션이 들어간 인자는 자동으로 숫자가 들어가기 때문에 NULL을 넣으면 된다.
INSERT INTO usertbl VALUES('LSG', '이승기', 1987, '서울', '011', '1111111', 182, '2008-8-8');
INSERT INTO usertbl VALUES('KBS', '김범수', 1979, '경남', '011', '2222222', 173, '2012-4-4');
INSERT INTO usertbl VALUES('KKH', '김경호', 1971, '전남', '019', '3333333', 177, '2007-7-7');
INSERT INTO usertbl VALUES('JYP', '조용필', 1950, '경기', '011', '4444444', 166, '2009-4-4');
INSERT INTO usertbl VALUES('SSK', '성시경', 1979, '서울', NULL , NULL , 186, '2013-12-12');
INSERT INTO usertbl VALUES('LJB', '임재범', 1963, '서울', '016', '6666666', 182, '2009-9-9');
INSERT INTO usertbl VALUES('YJS', '윤종신', 1969, '경남', NULL , NULL , 170, '2005-5-5');
INSERT INTO usertbl VALUES('EJW', '은지원', 1972, '경북', '011', '8888888', 174, '2014-3-3');
INSERT INTO usertbl VALUES('JKW', '조관우', 1965, '경기', '018', '9999999', 172, '2010-10-10');
INSERT INTO usertbl VALUES('BBK', '바비킴', 1973, '서울', '010', '0000000', 176, '2013-5-5');
INSERT INTO buytbl VALUES(NULL, 'KBS', '운동화', NULL , 30, 2);
INSERT INTO buytbl VALUES(NULL, 'KBS', '노트북', '전자', 1000, 1);
INSERT INTO buytbl VALUES(NULL, 'JYP', '모니터', '전자', 200, 1);
INSERT INTO buytbl VALUES(NULL, 'BBK', '모니터', '전자', 200, 5);
INSERT INTO buytbl VALUES(NULL, 'KBS', '청바지', '의류', 50, 3);
INSERT INTO buytbl VALUES(NULL, 'BBK', '메모리', '전자', 80, 10);
INSERT INTO buytbl VALUES(NULL, 'SSK', '책' , '서적', 15, 5);
INSERT INTO buytbl VALUES(NULL, 'EJW', '책' , '서적', 15, 2);
INSERT INTO buytbl VALUES(NULL, 'EJW', '청바지', '의류', 50, 1);
INSERT INTO buytbl VALUES(NULL, 'BBK', '운동화', NULL , 30, 2);
INSERT INTO buytbl VALUES(NULL, 'EJW', '책' , '서적', 15, 1);
INSERT INTO buytbl VALUES(NULL, 'BBK', '운동화', NULL , 30, 2);
테이블 생성되었나 확인
SELECT * FROM usertbl;
SELECT * FROM buytbl;
(결과) 두개의 테이블의 인자들이 잘 입력된 것을 볼 수 있다.
'DB관련 > MySQL' 카테고리의 다른 글
[MySQL] WHERE 조건 필더 (AND, OR, BETWEEN, IN) (0) | 2022.03.27 |
---|---|
[MySQL] USE문, SELECT * FROM문, 주석처리 하기, 항목보기 SHOW문 (0) | 2022.03.21 |
[MySQL / MariaDB] MySQL Workbench 사용자 생성, 권한 관리하기 (0) | 2022.03.14 |
[MySQL / MariaDB] 윈도우 MySQL Workbench에서 리눅스 MySQL(MariaDB)서버로 연결하기 (0) | 2022.03.14 |
[MySQL / MariaDB] 리눅스 CentOS에서 MariaDB 루트(root) 암호 생성하기 (0) | 2022.03.04 |