SQL 첫걸음 25강. 데이터베이스 객체

DongHo Im·2022년 1월 14일
0

SQL첫걸음

목록 보기
26/37

데이터베이스 객체

  • 데이터베이스 객체란 테이블이나 뷰, 인덱스 등 데이터베이스 내에 정의하는 모든 것을 일컫는 말로 구체적으로 이야기하면 실체를 가지는 어떤 것입니다.

  • 따라서 객체의 종류에 따라 데이터베이스에 저장되는 내용도 달라집니다.

  • 쉽게 테이블은 객체이며 해당 테이블을 조작할 수 있는 명령이었던 SELECT, INSERT 등은 객체가 아닙니다.

  • 객체는 이름을 가집니다. 따라서 데이터베이스 내에서 객체를 작성할 때는 이름이 중복되지 않게 해야 합니다.

  • 테이블의 열이나 SELECT 명령에서의 별명(AS) 또한 이름을 갖지만 이것들은 모두 객체가 아닙니다. 실체가 존재하지 않기 때문입니다.

  • 다만 이름을 붙일 때는 제약 사항, 다시 말해 아래와 같은 명명 규칙(Naming Convention)을 따라야 합니다.

  • 기존 이름이나 예약어와 중복하지 않는다.
  • 숫자로 시작할 수 없다.
  • 언더스코어(_) 이외의 기호는 사용할 수 없다.
  • 한글을 사용할 때는 더블쿼트("") (MySQL에서는 백쿼트('')) 로 둘러싼다.
  • 시스템이 허용하는 길이를 초과하지 않는다.
  • 이름은 어떤 데이터가 저장되어 있는지 파악하는 기준이 되는 경우가 많기 때문에 단순히 a와 같- 이 무의미한 이름이 아닌 연관된 유의미한 이름으로 짓는 게 중요합니다.

스키마

  • 객체는 스키마(Schema)라는 그릇 안에서 만들어집니다. 따라서 객체의 이름이 같아도 스키마가 서로 다르면 상관없습니다.
  • 이러한 특징 때문에 데이터베이스 객체는 스키마 객체(Schema Object)라 불리기도 합니다. - - 또한 테이블을 작성해서 구축해나가는 작업을 스키마 설계(Schema Design)라고 부릅니다.
  • 이때 스키마는 SQL 명령의 DDL(Data Definition Language)을 이용하여 정의합니다.

  • 조금 더 구체적인 예시로 MySQL의 경우 CREATE DATABASE 명령으로 작성한 데이터베이스가 곧 스키마가 됩니다.
  • Oracle 등에서는 데이터베이스와 데이터베이스 사용자가 계층적 사용자가 됩니다.
profile
[DATABASE] 비전공자 출신의 개발 도전!

0개의 댓글

관련 채용 정보