SCHEMA
A SCHEMA in SQL is a namespace that logically groups and organizes various database objects, such as tables, views, indexes, and procedures. It serves as a container, allowing the management of objects in a streamlined manner. The schema is used to control the authorized access of database objects to different users. Objects within a schema have unique names but can share names with objects in other schemas. The schema provides a level of data abstraction and security helping to manage the database effectively.
Example
CREATE SCHEMA sales;Output
Query OK, 1 row affected (0.00 sec)Explanation
This is a simple example of an SQL statement to create a new schema in MySQL. A schema, in SQL terms, is a collection of database objects, including tables, views, indexes, and procedures, associated with a database. In this example, a new schema called ‘sales’ is created.
Example
CREATE SCHEMA Accounting;Output
CREATE SCHEMAExplanation
In the given example, a new schema called ‘Accounting’ is created in the PostgreSQL database. The command CREATE SCHEMA is used to create a new schema. The name of the new schema is specified immediately after the command.
Example
CREATE SCHEMA Test_Schema;GO
CREATE TABLE Test_Schema.Employees( ID int IDENTITY(1,1) PRIMARY KEY, Name nvarchar(50), Title nvarchar(50));Output
Command(s) completed successfully.Explanation
In the example code, a new schema named Test_Schema is created, after which a new table named Employees is created within this schema. The table contains three columns: ID, Name, and Title. The ID column is set to auto increment and is also designated as the primary key for the table.
Example
CREATE SCHEMA AUTHORIZATION HR CREATE TABLE TAB_EMPLOYEE ( EMPLOYEE_ID NUMBER(6) NOT NULL, FIRST_NAME VARCHAR2(20), LAST_NAME VARCHAR2(25), EMAIL VARCHAR2(25), PHONE_NUMBER VARCHAR2(20), HIRE_DATE DATE, JOB_ID VARCHAR2(10), SALARY NUMBER(8,2), MANAGER_ID NUMBER(6), DEPARTMENT_ID NUMBER(4) ) CREATE VIEW EMP_VIEW AS SELECT FIRST_NAME, LAST_NAME FROM TAB_EMPLOYEE GRANT SELECT ON EMP_VIEW TO HROutput
This script doesn’t generate any visible output.
Explanation
The example code demonstrates the creation of a schema named HR along with a table TAB_EMPLOYEE and a view EMP_VIEW within the schema. EMP_VIEW is designed to display only FIRST_NAME and LAST_NAME from the TAB_EMPLOYEE table. At the end, the SELECT privilege on the view EMP_VIEW is granted to the HR user.