Fact Checked

What Is Data Manipulation Language?

Alex Newth
Alex Newth

Data manipulation language (DML) is a structured computer language used in databases to manipulate the data in some way. A few of the basic manipulations used in data manipulation language include adding to the database, changing a record, deleting a record, and moving data from one position to another. The DML commands are simple and involve one or two words, such as “SELECT” or “UPDATE”, to initiate the command. DML can be split into procedural and nonprocedural code, with the user specifying either what datum is required and how to reach it, or just what is needed, respectively. Without DML, there would be no way to manipulate the data in the database.

One of the main reasons for using a database is to store information, but the datum is typically useless or of limited use if it cannot be manipulated. DML is the standard language used to interact with the information stored in the database. Through this list of commands, a user can initiate a range of changes to the database to increase its usefulness.

DML can be used to delete a record.
DML can be used to delete a record.

Data manipulation language is a rather simple language, especially when compared to other manipulation languages, and needs just one or two words to start a command. The commands themselves are understood plainly — the “UPDATE” command is used to update a record, and a “DELETE” command is used to delete a record, for example. As a standard, the commands are entered in capital letters.

There are two sections to data manipulation language: procedural and nonprocedural. The procedural way of coding is often used in business settings and is the proper way of coding the DML request. In this schema, the user tells the database what datum the user wants to work with, and how to obtain the datum. This method tends to take more code and is a little harder on users but ensures the fidelity of the database coding and records.

The second method of coding requests is known as nonprocedural and, while it can be done, it is not the official way to work with a database. In nonprocedural data manipulation language, the user only tells the database what datum to work with, but not how to retrieve it. The commands themselves take much less code, so it will be easier for the user. At the same time, the database may generate unexpected or inefficient coding as a result of nonprocedural DML.

You might also Like

Discussion Comments


@miriam98 - I’m in a data management position and would like to learn more about the DML language.

Right now I’m just working with interfaces to build simple queries and reports. However, I found this article to be very useful in explaining the basic commands. I’ll have to get a book to brush up on SQL.


@allenJo - The real power comes in stored procedures, which is what I use at work with SQL Server.

Stored procedures are basically compiled SQL statements. You can include DML statements as well as IF-THEN and other programming logic constructs.

A stored procedure can be a very powerful piece of code, a mini program in its own right. The advantage of a stored procedure is that it is stored on the server, and executed there. That makes it more efficient in my opinion.


@everetra - I also got started with Access and presently use Oracle. In my opinion DML is what makes it possible to create powerful database queries and constructs.

Some of these are dangerous, too. The DELETE command will, true to its name, delete data from an underlying table. You don’t want just anyone being able to do this.

The DBA can set permissions to prevent certain users from being able to execute DELETE statements. Of course, if you make it a point to back up the database frequently, you can recover even in the case of an accidental deletion.


I started learning the basics of the data definition language with Microsoft Access. Access lets you create queries and stuff like that, and it has a fancy GUI based interface to make the process simple.

When I started out, that’s all I used. However, there is also a SQL View available in Access, and with that menu option I was able to view the underlying SQL DML constructs that made up the queries.

That’s the way that I learned about SELECT, DELETE, INSERT and UPDATE statements. It was a straightforward approach, and I found that I could tweak those queries to make new statements.

From then on, I was able to use SQL DML

statements in other database platforms like Oracle and SQL Server.

Post your comments
Forgot password?
    • DML can be used to delete a record.
      By: sg
      DML can be used to delete a record.