Data Definition Language (DDL)
Data Definition Language is used to specify the database schema. With this language user is able to create new tables, indexes, change the table structure, determines the storage structure tables, and much more. Results of DDL compilation is a collection of tables that are stored in a special file called a data directory. The data dictionary is a file that is in the form of metadata, which is data about data. The data dictionary will always be accessible on a database operation before a data file that is actually accessed.

Interactive Data Manipulation Language (DML)
Level of abstraction that was discussed earlier is not only applicable to the definition or data structure but also on data manipulation. Manipulation of the data itself can be:
  1. Retrieval of information stored in the database.
  2. Entry of new information into the database.
  3. Removal of information from the database.
  4. Modification of information stored in the database.
At the physical level, we need to define an algorithm that allows efficient access to the data. At higher levels, the emphasis is not only efficiency but also the efficiency of access to user interaction with the system.

DML is a language that allows a user to access or manipulate the data as represented by the data model. There are two kinds of DML, namely:
  • Procedural, requires the user to specify what data is needed and how to get the data.
  • Nonprosedural, requires the user to specify what data is needed without mention of how to get the data.
Transaction control
Transaction control is a database language governing transactions carried out by Data Manipulation Language (DML). Transaction control has a very large role in determining whether or not made changes to existing data in the database. An example of this is the command control transaction commit and rollback.

Embedded and Dynamic SQL
Example C, C ++, Java, Cobol, Pascal, etc. Not all DBMS have this facility, one DBMS instance has this facility is where the oracle oracle can load a class that is written using the Java programming language into the database.

To define specific access rights to the database objects.