Is this an accurate way to describe the difference in the meaning of schemas between the two technologies?
Microsoft uses an extension of SQL called Transact SQL (or T-SQL), whereas Oracle goes with Procedural Language/SQL. These two variations have different syntax, capabilities, and handle some things (like variables, built-in functions, and stored procedures) differently.
The database is a collection of schema, records, and constraints for the tables. On the other hand, a schema contains the structure of tables, attributes, their types, constraints, and how they relate to other tables. The DDL statement is used to generate and modify the schema.
The Microsoft Active Directory schema contains formal definitions of every object class that can be created in an Active Directory forest. The schema also contains formal definitions of every attribute that can exist in an Active Directory object.
A schema is a collection of database objects. A schema is owned by a database user and has the same name as that user. Schema objects are logical structures created by users. Objects such as tables or indexes hold data, or can consist of a definition only, such as a view or synonym.
Oracle schemas are like My Documents folders in the Windows OS. A user can grant permissions to other users to see things in their schema but an Oracle schema is essentially a user's workspace.
MS SQL Server's schemas are namespaces. While you can have Accounting and Marketing schemas, they are not tightly-coupled to individual users. Objects in an Accounting schema contain accounting information and objects in the Marketing schema have marketing information.
Oracle schemas are tightly-coupled to users and MS SQL Server schemas are primarily for classification.
See this question for more information: Difference between SQL Server and Oracle user
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With