Data Definition Language - Used by the DBA and database designers to specify the description of the database.
Data Definition Language
CREATE TABLE student(
name VARCHAR2(50),
student_no NUMBER(9),
classification VARCHAR2(9)
);
Data Manipulation Language - Used to specify database retrievals and
updates (insertion, deletion and modification of data)
Data Manipulation Language
SELECT * from student;
INSERT INTO student values ('Mariang Banga', 202212345, 'JUNIOR');
UPDATE student set classification = 'SENIOR' where name = 'Mariang Banga';
Data Control Language - Used to control and provide levels of access
privileges and authorization to database objects.
DBMS Interfaces
Stand-alone query language interfaces
Programmer interfaces for embedding DML in programming languages
User-friendly interfaces
Menu-based, popular for browsing on the web
DBMS Interfaces
Forms-based, designed for naïve users
Graphics-based
Natural language: requests in written English
Speech as Input and Output
Parametric interfaces, e.g., bank tellers using function keys.
DDL Compiler -Process DDL statements and stores database description in the DBMS catalog
Privileged Commands - Commands used only by the DBA or the DBA staff. These includes commands for creating accounts, granting account authorization, changing database description, etc.
Query Compiler - Parses queries, analyzes queries for correctness of operations and names of data elements, and compiles them into an internal form
Query Optimizer - Concerned with the rearrangement and possible reordering of operations, elimination of redundancies and use of correct algorithms during execution.
Query Optimizer - Generates executable code and makes calls on the runtime processor
Precompiler - Extracts DML commands from an application program
DML Compiler - Parses DML statements and translates them into an object code
Host Language Compiler - Parses and compiles host language statements
Compiled Transaction - Canned transactions that is based on the object codes produced by the DML and host language compiler
Runtime Database Processor - Executes privileged commands, executable query plans and canned transactions with runtime parameters
Stored Data Manager - Controls access to the information stored on the disk
Stored Data Manager - Interacts with the Operating System to carry put low-level input/output operations between the disk and main memory
DBMS Architecture
Centralized
Client-Server
Centralized DBMS - Combines everything into single system including- DBMS software, hardware, application programs, and user interface processing software.
Centralized DBMS - User can still connect through a remote terminal – however, all processing is done at centralized site.
Client-server DBMS - Composed of two parts: the client and the server
Client - A user machine that provides user interface capabilities and local processing.
Client - May be diskless machines or PCs or Workstations with disks with only the client software installed.
Client - Connected to the servers via some form of a network.
Types of Client
Thin
Thick
Thin client - Dependent on another machine (e.g., server) to complete a process
Thick client - Can provide functionality independent of the server
Examples of specialized Servers with Specialized functions
❏ Print server
❏ File server
❏ Web server
❏ Email server
❏ DBMS server
Clients can access the specialized servers as needed
Server - A system containing both hardware and software that can provide services to the client machines such as file access, printing, archiving or database access
Two Tier Client-Server Architecture
1st Approach - Client contains the user interface and application programs. Server contains the DBMS
Two Tier Client-Server Architecture
2nd Approach - The DBMS was divided into client and server. Client may handle user interface, application programs, data dictionary functions, DBMS interactions with the compilers, query optimizer, etc.
Two Tier Client-Server Architecture
2nd Approach - Server may include software responsible for handling data storage on disks, buffering of disk pages, etc. (also known as data server)
Three-Tier Client-Server Architecture
❏ The client communicates with the application server usually through a form's interface.
❏ The application server stores the business rules (procedures) that are used to access data from the database.
❏ The database server will provide the data.
Three-tier Architecture Can Enhance Security:
❏ Database server is only accessible via middle tier
❏ Clients cannot directly access database server
Database Schema - The description of a database. Includes descriptions of the database structure, data types, and the constraints on the database.
Schema Diagram - An illustrative display of (most aspects of) a database schema.
Schema Construct - A component of the schema or an object within the schema, e.g., STUDENT, COURSE.