Wecode - Foundation 1 (부트캠프)/MySQL (데이터베이스 만듦_terminal 이용)

[MySQL] SQL 개념, 쿼리언어/ '데이터베이스', '관계형데이터베이스', SQL의 관계

JBS 12 2023. 9. 1. 10:16

SQL문을 사용하는 건 많다. 

Mysql, 오라클, 마리아, 등 

 

그럼에 mysql 하나를 할면 다 알 수 있다!


sql을 이해하기 위해, 앞서서

 

*쿼리 Query 

의문, 문의 라는 뜻 : 파일의 내용 등을 알기 위해 몇개의 code, key를 기초로 질의하는 것

 

  • 데이터를 조회하기 위한 명령어 
  • 정보 시스템에 데이터를 질의하는 일
  • 테이블형 자료구조에서, 조건에 맞는 데이터 추출/ 조작하는 명령어 

*쿼리언어  Query Language

특수한 응용 프로그램 도움 없이 데이터베이스를 쉽게 이용하도록 만든 고수준 언어 

  • 질의용 언어 (문법체계) 
  • 데이터베이스와 정보시스템에 질의하도록 

* sql이란

구조화 쿼리 언어 (Structured Query Language)

 

관계형 데이터베이스(RDBMS)에서 데이터를 정의하고 조작하기 위한 표준화된 언어

 

즉, 데이터 관리와 처리를 위해 설계된

특수 목적의 프로그래밍 언어,

질의(Query) 언어

 

 

*데이터베이스가 SQL을 받아들이는 방식

띄어쓰기 단위로 구분

 

 

*SQL 명령어

 

1. DDL(Data Definition Language, 데이터 정의 언어) 

데이터베이스 스키마와 설명을 처리

데이터베이스, 테이블 생성/변경/삭제 

  • CREATE(데이터베이스 개체(테이블, 인덱스, 제약조건 등)의 정의, 생성
  • DROP(데이터베이스 개체 삭제)
  • ALTER(데이터베이스 개체 정의 변경)

 

2. DML(Data Manipulation Language, 데이터 조작 언어)

데이터 검색, 삽입, 변경, 삭제 수행을 조작하는 언어입니다. 실질적으로 저장된 데이터를 관리하고 처리할 때 사용합니다. 

 

*SELECT(테이블 데이터의 검색 결과 집합의 취득)

*INSERT(행 데이터 또는 테이블 데이터의 삽입)

*DELETE(데이터의 삭제)

*UPDATE(표 업데이트)

 

3. DCL(Data Control Language, 데이터 제어 언어)

사용자 관리 및 사용자별로 릴레이션 또는 데이터를 관리하고 접근하는 권한을 다루기 위한 언어입니다. 

 

*COMMIT : 트랜잭션의 작업 결과를 반영 

*ROLLBACK : 트랜잭션의 작업을 취소 및 원래대로 복구

*GRANT : 사용자에게 권한 부여

*REVOKE : 사용자 권한 취소

 

 

*mysql과 sql의 차이

 MySQL은 데이터를 저장하는 기반 기술이며, SQL은 데이터를 읽고, 수정하고, 삭제하는 데 사용하는 언어

 

  • SQL은 관계형 데이터베이스에서 정보를 쿼리하고 처리하는 데 사용할 수 있는 프로그래밍 언어 (데이터 추가, 업데이트, 검색) 
  •  MySQL은 관계형 데이터베이스 관리 시스템 (저장, 관리) 

 

*'데이터베이스'와 '관계형데이터베이스'와 SQL의 관계 

  • 데이터베이스(Database, DB) : 데이터의 저장소.  데이터의 집합
  • DBMS(Database Management System, 데이터베이스 관리 시스템): 데이터베이스를 운영, 관리하는 소프트웨어
    • 종류: '계층형 DBMS', '망형 DBMS', '관계형 DBMS '
    • 대부분 '관계형 DBMS'(RDMBS) 사용 - 테이블로 구성 되어 있음
  • SQL(Structured Query Language)란? 관계형 데이터베이스에서 사용되는 언어(구조화된 질의 언어). 표준 SQL을 배우면 대부분의 데이터베이스를 사용할 수 있음.