What Is UUID Data Type in MySQL?


Angela Bailey

If you have been working with MySQL databases, you might have come across the term “UUID” or “Universally Unique Identifier”. In this article, we will explore what exactly a UUID data type is and how it can be used in MySQL.

What is a UUID

A UUID is a 128-bit number that is generated in such a way that it is unique across all devices and all time. It stands for Universally Unique Identifier. The purpose of using UUIDs is to ensure that each record in a database has a unique identifier, even if the records are distributed across multiple servers or databases.

A UUID can be represented as a string of hexadecimal digits separated by hyphens. For example, “550e8400-e29b-41d4-a716-446655440000” is a valid UUID.

Why use UUID data type in MySQL

MySQL provides the UUID data type to store and manage UUIDs efficiently. There are several reasons why you might choose to use UUIDs:

  • Universally unique: As mentioned earlier, each UUID is guaranteed to be globally unique, which makes it suitable for scenarios where uniqueness is critical.
  • Distributed systems: If your application uses distributed systems or multiple databases, using UUIDs ensures that each database can generate its own unique identifiers without conflicts.
  • Data privacy: Unlike auto-incrementing integers, which might expose sensitive information about the size of your database or the number of records, UUIDs do not reveal any such information.

How to use UUID data type in MySQL

To use the UUID data type in MySQL, you need to define a column with the UUID data type.

Here is an example of creating a table with a UUID column:

    name VARCHAR(255)

In the above example, we have defined a column named “id” with the UUID data type. The DEFAULT UUID() option ensures that a new UUID is generated for each new row inserted into the table.

Inserting values into a table with a UUID column

To insert values into a table with a UUID column, you can simply omit the value for the UUID column and MySQL will generate a new UUID automatically.

INSERT INTO users (name) VALUES ('John Doe');

The above query will insert a new row into the “users” table with a unique UUID value for the “id” column.

Querying rows using UUID values

To query rows based on their UUID values, you can use the UUID_TO_BIN() function to convert the string representation of the UUID to its binary form.

SELECT * FROM users WHERE id = UUID_TO_BIN('550e8400-e29b-41d4-a716-446655440000');

The above query will return all rows from the “users” table where the “id” column matches the provided UUID.


The UUID data type in MySQL provides an efficient way to store and manage universally unique identifiers. It ensures uniqueness across databases and can be used in distributed systems without conflicts. By using the proper HTML styling elements like bold text, underlined text,


  • for lists, and


    for subheaders, we can make our content visually engaging and organized.

    By understanding the concept of UUIDs and how to use the UUID data type in MySQL, you can enhance the integrity and security of your database applications.