MySQL - UNLOCK TABLES Statement

A session releases all the tables locks with it at once. You can implicitly release the table locks. If the connection to the server terminates explicitly or implicitly all the locks will be released.
You can release the locks of a table explicitly using the UNLOCK TABLES statement.
Following is the syntax of the MySQL UNLOCK TABLES statement −
UNLOCK TABLES

Suppose we have created a table that contains the sales details along with the contact details of the customers as shown below −
mysql> CREATE TABLE SalesDetails (
   ID INT,
   ProductName VARCHAR(255),
   CustomerName VARCHAR(255),
   DispatchDate date,
   DeliveryTime time,
   Price INT,
   Location VARCHAR(255),
   CustomerAge INT,
   CustomrtPhone BIGINT,
   DispatchAddress VARCHAR(255),
   Email VARCHAR(50)
);
Now, let’s insert 2 records into the above created table using the INSERT statement as −
mysql> insert into SalesDetails values(1, 'Key-Board', 'Raja', DATE('2019-09-01'), TIME('11:00:00'), 7000, 'Hyderabad', 25, '9000012345', 'Hyderabad – Madhapur', 'pujasharma@gmail.com');
Query OK, 1 row affected (0.84 sec)
mysql> insert into SalesDetails values(2, 'Mobile', 'Vanaja', DATE('2019-03-01'), TIME('10:10:52'), 9000, 'Chennai', 30, '90000123654', 'Chennai- TNagar', 'vanajarani@gmail.com'); 
Query OK, 1 row affected (1.84 sec)
If we want another table with just the contact details of the customer create a table as −
mysql> CREATE TABLE CustContactDetails (
   ID INT,
   Name VARCHAR(255),
   Age INT,
   Phone BIGINT,
   Address VARCHAR(255),
   Email VARCHAR(50)
);
Following queries insets records into the CustContactDetails table using the INSERT INTO SELECT statement. Here, we are trying to insert records from the SALES_DETAILS table to CustContactDetails table.
Here before the transfer, we are acquiring the write lock on the table to which we are inserting records and acquiring read lock on the table from which we are inserting records. Finally, after the transfer we are releasing the records.
LOCK TABLES SalesDetails READ, CustContactDetails WRITE;
INSERT INTO CustContactDetails (ID, Name, Age, Phone, Address, Email)
   SELECT
      ID, CustomerName, CustomerAge, CustomrtPhone, DispatchAddress, Email
   FROM
      SalesDetails
   WHERE
      ID = 1 AND CustomerName = 'Raja';

INSERT INTO CustContactDetails (ID, Name, Age, Phone, Address, Email)
   SELECT
      ID, CustomerName, CustomerAge, CustomrtPhone, DispatchAddress, Email
   FROM
      SalesDetails
   WHERE
      ID = 2 AND CustomerName = 'Vanaja';
UNLOCK TABLES;
You can verify the contents of the CustContactDetails table as shown below −
mysql> SELECT * FROM CustContactDetails;
+------+--------+------+-------------+----------------------+----------------------+
| ID   | Name   | Age  | Phone       | Address              | Email                |
+------+--------+------+-------------+----------------------+----------------------+
| 1    | Raja   | 25   | 9000012345  | Hyderabad – Madhapur | pujasharma@gmail.com |
| 2    | Vanaja | 30   | 90000123654 | Chennai- TNagar      | vanajarani@gmail.com |
+------+--------+------+-------------+----------------------+----------------------+
2 rows in set (0.00 sec)

    31 Lectures 
     6 hours 

 Eduonix Learning Solutions

    84 Lectures 
     5.5 hours 

 Frahaan Hussain

    6 Lectures 
     3.5 hours 

 DATAhill Solutions Srinivas Reddy

    60 Lectures 
     10 hours 

 Vijay Kumar Parvatha Reddy

    10 Lectures 
     1 hours 

 Harshit Srivastava

    25 Lectures 
     4 hours 

 Trevoir Williams
 Print
 Add Notes
 Bookmark this page