1. 기본 구조 차이
Oracle:
- 사용자(User)와 스키마(Schema)가 1:1로 매핑됨
- 사용자를 생성하면 동일한 이름의 스키마가 자동으로 생성됨
- 테이블은 직접 사용자(=스키마)에 속함
MSSQL:
- 사용자와 스키마가 분리되어 있음
- 한 사용자가 여러 스키마를 소유할 수 있고, 여러 사용자가 하나의 스키마에 객체를 생성할 수 있음
- 테이블은 스키마에 속하고, 스키마는 사용자에게 속함
- 한 계정으로 여러 DB에 붙을 수 있음
2. 테이블 참조 방식
Oracle:
SELECT * FROM SCOTT.EMP; -- SCOTT은 사용자이자 스키마
MSSQL:
SELECT * FROM Sales.Orders; -- Sales는 스키마, 소유자는 별도로 존재
3. 권한을 누가 주는가?
Oracle: sys
MSSQL: sa