데이터베이스 객체란 테이블이나 뷰, 인덱스 등 데이터베이스 내에 정의하는 모든 것을 일컫는 말로 구체적으로 이야기하면 실체를 가지는 어떤 것입니다.
따라서 객체의 종류에 따라 데이터베이스에 저장되는 내용도 달라집니다.
쉽게 테이블은 객체이며 해당 테이블을 조작할 수 있는 명령이었던 SELECT, INSERT 등은 객체가 아닙니다.
객체는 이름을 가집니다. 따라서 데이터베이스 내에서 객체를 작성할 때는 이름이 중복되지 않게 해야 합니다.
테이블의 열이나 SELECT 명령에서의 별명(AS) 또한 이름을 갖지만 이것들은 모두 객체가 아닙니다. 실체가 존재하지 않기 때문입니다.
다만 이름을 붙일 때는 제약 사항, 다시 말해 아래와 같은 명명 규칙(Naming Convention)을 따라야 합니다.
- 기존 이름이나 예약어와 중복하지 않는다.
- 숫자로 시작할 수 없다.
- 언더스코어(_) 이외의 기호는 사용할 수 없다.
- 한글을 사용할 때는 더블쿼트("") (MySQL에서는 백쿼트('')) 로 둘러싼다.
- 시스템이 허용하는 길이를 초과하지 않는다.
- 이름은 어떤 데이터가 저장되어 있는지 파악하는 기준이 되는 경우가 많기 때문에 단순히 a와 같- 이 무의미한 이름이 아닌 연관된 유의미한 이름으로 짓는 게 중요합니다.