DBMS 8

데이터베이스 사용자 관리 (DCL문)

1. 사용자 추가 및 확인# 문법 형식create user '사용자명'@'서버IP' identified by '비밀번호';# localhost에서만 접근할 계정create user '사용자명'@'localhost' identified by '비밀번호';# 모든 IP에서 접속을 허용할 계정create user '사용자명'@'%' identified by '비밀번호'; sql 확장자 스크립트에서 사용하는게 아니라 MySQL Command Line Client에서 수행# 생성된 계정 확인하기use mysql;select user, host from user; 2. 권한 설정하기사용자 권한 할당 상세 옵션 create, drop, alter: 테이블에 대한 생성, 삭제, 변경 권한 select, in..

DBMS/MySQL 2024.10.10

UNION과 VIEW

1. UNION- 합집합을 나타내는 연산자- 똑같은 row는 하나만 보여줌 (중복제거)- 서로 같은 종류의 테이블(컬럼이 같아야 함)에서만 적용이 가능함select 컬럼1, 컬럼2, ... from 테이블1 union select 컬럼1, 컬럼2, ... from 테이블2 *예시 테이블# 두 개의 테이블의 데이터를 모두 보여줌select code, name, price from product union select code, name, price from product_new; 2. UNION ALL- 중복제거 x# union all은 중복데이터를 제거하지 않음select code, name, price from product union all select code, name, price from pro..

DBMS/MySQL 2024.10.10

MySQL 문자열 다루기

1. concat : 문자열을 연결# concat: 문자열을 연결해주는 함수select concat('안녕하세요', 'MySQL') as concat;# 안녕하세요MySQLselect concat(ssn1, '-', ssn2) as address from member where userid = 'apple';# 991223-1234567 2. left, right : 해당 방향에서 몇 글자를 출력# left, right: 왼쪽 또는 오른쪽에서 길이만큼 문자열을 반환select left('ABCDEFGHIJKLMN', 5);# ABCDEselect right('ABCDEFGHIJKLMN', 5);# JKLMN 3. substring : 문자열 어디부터 어디까지 추출# substring: 문자열의 일부를 추..

DBMS/MySQL 2024.10.10

정규화된 테이블 간의 연결 (feat. join)

joinselect 필드1, ... from 테이블1 [inner, left, right] join 테이블2 on 테이블1.필드 = 테이블2.필드  1. INNER JOIN- 조인하는 테이블의 on 절의 조건이 일치하는 결과만 출력- 두 테이블간의 데이터 교집합- join, cross join 모두 같은 의미로 사용됨# 공통 PK로 연결된 컬럼만 보여주는 inner joinselect member.userid, name, gender, mbti from member join profile on member.userid = profile.userid; 2. OUTER JOIN- 두 테이블이 조인될 때 왼쪽(기본키 테이블) 또는 오른쪽(외래키 테이블) 기준으로, 기준 테이블의 데이터를 모두 출력# left ..

DBMS/MySQL 2024.10.10

테이블에 데이터 CRUD (DML문)

CRUD란?    CREATE : 생성 (삽입)    READ : 검색    UPDATE : 수정    DELETE : 삭제# 단어장 예제를 위한 예시 테이블CREATE TABLE WORDS( ENG VARCHAR(50) PRIMARY KEY, KOR VARCHAR(50) NOT NULL, LEV INT DEFAULT 1) 1. 삽입 (INSERT문)# 모든 데이터를 인자로 꼭 전달해야하는 INSERT문INSERT INTO 테이블명 VALUES (컬럼1, 컬럼2, 컬럼3, ...)# NOT NULL인 컬럼만 선택적으로 채우면 되는 INSERT문INSERT INTO 테이블명 (컬럼1, 컬럼2, ...) VALUES (값1, 값2, ...)# 실전 예시INSERT INTO WORDS VALUES ..

DBMS/MySQL 2024.10.08

데이터베이스 및 테이블 문법 (DDL문)

1. 데이터베이스 확인 및 생성# 데이터베이스 확인show databases;# 데이터베이스 생성create database 데이터베이스이름; 2. 테이블 생성create table 테이블명 (컬럼명 데이터타입 제약조건, ... )(1) 데이터 타입    1)  숫자형    TINYINT, SMALLINT, MEDIUMINT, INT, BIGINT : 정수        * 정수형 권장            21억 이하 = INT 사용            21억 초과 = BIGINT 사용      FLOAT, DOUBLE, DECIMAL : 실수         * 실수형 권장             대체로 DOUBLE 사용             원하는 소숫점 자리 설정시 DECIMAL 사용     2) 문자형..

DBMS/MySQL 2024.10.08

데이터베이스 (DataBase) 개요

데이터(Data) 란?가공되지 않은 상태의 특정 의미를 가지는 숫자, 문자, 기호들의 집합 정보(Information) 란?데이터를 처리과정을 거쳐 도출된 의미 있는 결과 데이터베이스(DataBase) 란?체계적으로 구성된 데이터의 집합목적 : 효율적 저장, 검색, 수정을 위한 구조와 도구 제공*DBMS(DataBase Management System) : 데이터베이스를 관리할 수 있게 도와주는 소프트웨어*배포된 DBMS 순위 사이트 : https://db-engines.com/en/ranking DB-Engines RankingPopularity ranking of database management systems.db-engines.com 1. DBMS의 종류 (1) 관계형 데이터베이스 (RDBMS)..

DBMS/MySQL 2024.10.07