훈훈훈

데이터베이스 : MySQL 명령어 정리 본문

데이터베이스

데이터베이스 : MySQL 명령어 정리

훈훈훈 2020. 2. 8. 18:47

# 데이터베이스(DataBase) 란?

 통합 관리 되는 데이터의 집합 

 

# MySQL 설치 (MAC OS)

 $ brew insatll mysql  

 $ mysql.server start

 $ mysql -uroot -p 

 $ show databases;

 $ use ["DB_NAME"]

 

# 테이블과 칼럼

- TABLES : 데이터베이스에 존재하는 테이블 정보 제공 

- COLUMNS : 데이터베이스에 존재하는 테이블 칼럼 정보 제공

 

# 주석

- " # "  :  한 줄 주석

- " -- "  :  한 줄 주석

- " /* */ "  : 여러 줄 주석

 

# 스키마(Schema)

데이터베이스에서 자료의 구조, 표현 방법, 관계를 형식 언어로 정의한 구조

DBMS이 주어진 설정에 따라 데이터베이스 스키마를 생성하며, 데이터베이스 사용자가 자료 저장, 조회, 삭제, 변경할 떄

DBMS는 자신이 생성한 데이터베이스 스키마를 참조하여 명령 수행

   ===> 정리하자면 임의의 사용자가 생성한 모든 데이터베이스 객체들을 의미함 

 

# MySQL 명령어 

+ CREATE

  새로운 데이터베이스(테이블)  생성, [CREATE DATABASE(TABLE) NAME]

  데이터베이스는 1개 이상의 테이블로 구성되며, 테이블에 데이터를 저장 및 관리가 가능

  테이블을 생성하기 위해서는 테이블 이름, 필드 목록, 각 필드의 타입을 명시해야함

+ INSERT

 INSERT INTO & VALUES 문을 통해 테이블에 새로운 레코드를 입력 가능

    ** 생략 가능한 필드

      1. NULL 저장이 가능한 필드

      2. DEFAULT 제약 조건이 설정된 필드

      3. AUTO_INCREMENT 키워드가 설정된 필드 

 

+ SELECT

SELECT 문을 통해 테이블의 레코드를 선택 후 읽을 수 있다.

" * " 기호를 사용하면 테이블의 모든 필드를 불러올 수 있다. [SELECT *FROM TABLE_NAME]

+ ALTER

ALTER 문을 사용하여 데이터베이스(테이블) 내용 수정 할 수 있음

 - ADD : 새로운 필드 추가

 - DROP : 필드 삭제

  - 필드 타입도 변경 가능

 

+ UPDATE

UPDATE 문을 사용해서 레코드의 내용 수정 가능, 해당 명령어는 WHERE 절의 조건을 만족하는 레코드 값만을 수정

+ DELETE

DELETE 문을 사용하여 테이블의 레코드 삭제 가능, 해당 명령어는 WHERE 절의 조건을 만족하는 레코드만 삭제 가능

 

# 서브쿼리(SubQuery)

서브쿼리란 다른 쿼리 내부에 포함되어 있는 SELECT 문을 나타나며, 조건식 내부에 SELECT 구문 사용이 가능하여 좀 더 명확한 데이터 추출이 가능하다.

 

 * 정리

   - 하나의 SELECT 문 내에 포함된 또 다른 SELECT 문이 있는 쿼리

   - 쿼리문 전체를 메인 쿼리, 메인 쿼리 내에 있는 SELECT문은 서브 쿼리

   - 비교 연산자의 오른쪽에 사용해야하며, 반드시 괄호 안에 구문을 작성해야함

   - 메인 쿼리가 실행되기 이전에 1번만 실행

   - 쿼리가 복잡해질 시, JOIN, UNION을 사용하는 것보다 서브쿼리를 사용하는 것이 가독성 측면에서 좋을 수 있음

      > JOIN, UNION 문에 관해서는 관계형 데이터베이스 정리할떄 같이 작성할 예정

 

 

 

 

 

 

 

 

 

'데이터베이스' 카테고리의 다른 글

데이터베이스 : 관계형 데이터 베이스 정리  (0) 2020.02.09
Comments