Tom's Note
Published 2019. 9. 25. 20:09
1. SQL이란? 프로그래밍 언어/SQL
반응형

SQL의 개요

SQL은 구조화된 질의 언어(Structed Query Language)의 약자로 DBMS 상에서 데이터를

 

  • 읽기
  • 쓰기
  • 삭제 등 

데이터를 관라하기 위한 일종의 프로그램 언어다.

 

C언어 자바와 같은 일반 프로그래밍 언어는 절차지향적 언어라고 할 수 있는데 반해, SQL은 집학적 언어다.

절차적언어의 특징은 프로그래밍을 순서대로 로직이 처리되는 것이다.(자바 같은 객체지향형 언어도 절차지향형 언어에 뿌리를 두고 있다.)

집합적 언어는 데이터를 특성 집합 단위로 분류해 단위별로 한 번에 처리하는 언어다.

 

SQL은 크게 DDL과 DML로 나눌 수 있다 DDL은 데이터 정의어(Data Definition Language)로 데이터베이스 객체를 관리하는 언어고, DML은 데이터 조작어(Data Manipulation Language)로 데이터 삽입, 조회, 삭제, 갱신 등 실제로 데이터를 조작하는 언어다.

 

DDL

  • CREATE: 테이블이나 인덱스, 뷰 등 데이터베이스 객체를 생성
  • DROP: 생성된 데이터베이스 객체를 영구히 삭제
  • ALTER: 이미 생성된 데이터베이스 객체를 수정
  • TRUNCATE: 테이블이나 클러스터의 데이터를 통째로 삭제

DML

  • SELECT: 테이블이나 뷰에 있는 테이터 조회
  • INSERT: 데이터를 신규로 생성
  • UPDATE: 이미 생성된 데이터를 수정
  • DELETE: 데이터를 삭제
  • COMMIT: 트랙잭션 처리, 변경된 데이터를 최종 적용
  • ROLLBACK: 트랜잭션 처리, 변경된 데이터를 적용하지 않고 이전으로 되돌림

DCL

  • GRANT: 특정 데이터 조작 권한 주기
  • REVOKE: 특정 데이터 조작 권한 회수
...더보기

▶ 개발현장에서의 DDL 사용

실제 프로젝트에 나가면 개발자 입장에스는 DDL을 사용하는 경우가 그리 많지 않다. 보통 데이터베이스 객체관리는 DBA(데이터베이스 관리자)나 별도 관리 인원이 담당한다. 각 개발자가 관리 권한을 갖게 되면 테이블을 마음대로 조작하기 때문에 프로젝트는 점점 산으로 가기 때문이다. 

일반 개발자는 DDL의 사용빈도는 적을 뿐더러 제대로 된 실력자가 아니라면 관리권한을 주지 않는다.

고급 개발자가 되기위해서 더욱 힘쓰기를...

PL/SQL의 개요

PL/SQL은 절차적 언어다. 하지만 그 뿌리는 SQL이다. 특정 코드를 사용하는 것이 아니라 SQL을 절차적으로 사용한다고 할 수 있다.

예를 들어, 변수에 값을 할당하거나 예외처리도 가능하고, 특정 기능을 처리하는 함수나 프로시저를 생성할 수 있다. 또한 PL/SQL은 DB 서버에 코드가 올라가 컴파일되어 수행되는 것이 특징이다.

 

반응형

'프로그래밍 언어 > SQL' 카테고리의 다른 글

2.3 뷰(VIEW)  (0) 2019.09.26
2.2 테이블(TABLE) 생성, 삭제, 변경, 복사  (2) 2019.09.25
2.1 데이터베이스 객체  (0) 2019.09.25
profile

Tom's Note

@크크크크

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!