Bobcares

MySQL alter ENUM to VARCHAR | Guide

by | Sep 29, 2023

Learn how to alter enum to varchar in MySQL. Our MySQL Support team is here to help you with your questions and concerns.

MySQL alter ENUM to VARCHAR | Guide

If you are looking for a way to convert an ENUM column to VARCHAR in MySQL, our experts have your back.

MySQL alter ENUM to VARCHAR | Guide

According to our experts, there are two ways to get this done.

Method 1: Using ALTER TABLE with CAST

  1. First, we have to create a sample table with an ENUM column:

    CREATE TABLE enum_example (
    id INT AUTO_INCREMENT PRIMARY KEY,
    color ENUM('orange', 'green', 'blue', 'yellow')
    );

  2. Then, we must add a new VARCHAR column to the existing table with the ALTER TABLE statement.

    ALTER TABLE enum_example
    ADD COLUMN color_new VARCHAR(255);

  3. Now, update the newly added VARCHAR column with data from the ENUM column by casting it as a character using the CAST function.

    UPDATE enum_example
    SET color_new = CAST(color AS CHAR);

  4. Then, we will drop the old ENUM column from the table as seen here:

    ALTER TABLE enum_example
    DROP COLUMN color;

  5. We can verify the above steps worked by running a SELECT query on the table.

Method 2: Using ALTER TABLE with CASE

  1. First, let’s create a sample table with an ENUM column:


    CREATE TABLE enum_example (
    id INT AUTO_INCREMENT PRIMARY KEY,
    color ENUM('orange', 'green', 'blue', 'yellow')
    );

  2. Then, add a new VARCHAR column to the existing table with the ALTER TABLE statement.

    ALTER TABLE enum_example
    ADD COLUMN color_new VARCHAR(255);

  3. Now, update the newly added VARCHAR column with data from the ENUM column wit a CASE statement.


    UPDATE enum_example
    SET color_new =
    CASE color
    WHEN 'orange' THEN 'orange'
    WHEN 'green' THEN 'vert'
    WHEN 'blue' THEN 'bleu'
    WHEN 'yellow' THEN 'jaune'
    ELSE 'unknown'
    END;

  4. Finally, it is time to drop the old ENUM column from the table.


    ALTER TABLE enum_example
    DROP COLUMN color;

  5. We can verify the above steps worked by running a SELECT query on the table.

Today, we took a quick look at two methods to convert an ENUM column to VARCHAR in MySQL. Let us know in the comments which method helped you out.

[Need assistance with a different issue? Our team is available 24/7.]

Conclusion

In brief, our Support Experts demonstrated how to alter ENUM to VARCHAR in MySQL.

PREVENT YOUR SERVER FROM CRASHING!

Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.

GET STARTED

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

Never again lose customers to poor
server speed! Let us help you.