Your Page Title
🔍

    Update Operation

    To update the records in a MySQL database using Python, one has to execute the SQL UPDATE statement with the assistance of some library such as mysql-connector-python. Below is a detailed explanation of the process.

    Steps to Perform an Update Operation

    1. Install Required Library

    First, ensure you have the mysql-connector-python library installed. You can install it using:

    pip install mysql-connector-python

    2. Connect to the Database

    Use the mysql.connector.connect() function to establish a connection to your MySQL database.

    3. Create a Cursor Object

    The cursor object is used to execute the SQL queries.

    4. Write and Execute the Update Query

    The UPDATE statement is written as:

    UPDATE table_name
    SET column1 = value1, column2 = value2, ...
    WHERE condition;

    You pass this query as a string to the execute() method of the cursor object.

    5. Commit the Changes

    After executing the query, use the commit() method of the connection object to save the changes to the database.

    6. Close the Connection

    Always close the cursor and connection objects to free up resources.

    Example Code

    Here’s a Python script demonstrating the update operation:

    import mysql.connector
    
    # Step 1: Connect to the database
    try:
        connection = mysql.connector.connect(
            host="localhost",        # Database host (e.g., localhost)
            user="your_username",    # Database username
            password="your_password",# Database password
            database="your_database" # Name of the database
        )
    
        if connection.is_connected():
            print("Connected to the database!")
    
        # Step 2: Create a cursor object
        cursor = connection.cursor()
    
        # Step 3: Define the UPDATE query
        update_query = """
        UPDATE employees
        SET salary = %s, department = %s
        WHERE employee_id = %s;
        """
        values = (75000, "HR", 101)  # Tuple of values to replace placeholders
    
        # Step 4: Execute the UPDATE query
        cursor.execute(update_query, values)
    
        # Step 5: Commit the changes
        connection.commit()
    
        print(f"Rows updated: {cursor.rowcount}")  # Check how many rows were updated
    
    except mysql.connector.Error as error:
        print(f"Error: {error}")
    finally:
        # Step 6: Close the cursor and connection
        if cursor:
            cursor.close()
        if connection.is_connected():
            connection.close()
            print("MySQL connection is closed")

    Explanation of Key Parts

    1. Utilization of Placeholders in Queries

    Placeholders such as %s protect against SQL injections. The values to be used to replace the placeholders are passed as a tuple (values).

    2. Error Handling

    The try and except blocks handle potential errors, such as connection issues and SQL syntax errors.

    3. Transaction Handling

    The commit() method makes sure the changes made have been saved to the database. Without it, the update will not persist.

    Output

    If the output is successful, it will confirm the database connection, display the number of updated rows, and close the connection.

    Connected to the database!
    Rows updated: 1
    MySQL connection is closed

    Use Case Scenarios

    • Update a particular record: When the WHERE clause points to a unique identifier, such as employee_id = 101.
    • Update multiple records: Apply a condition that matches more than one row (e.g., department = 'IT').
    • Dynamic updates: Users can give the system values to update the data in real-time.