কম্পিউটার টিউটোরিয়াল

MySQL-এ LOCK TABLES READ লক থেকে মুক্তি পাওয়া (ERROR 1099 সমাধান)

MySQL-এ LOCK TABLES ... READ লক থাকলে সেই টেবিলে INSERT, UPDATE, DELETE করা যায় না। এরর: ERROR 1099 (HY000): Table was locked with a READ lock and can't be updated। সমাধান: UNLOCK TABLES।

টেবিল ও ডেটা

mysql> CREATE TABLE demo6 (country_name VARCHAR(100));
mysql> INSERT INTO demo6 VALUES ('US'), ('UK'), ('AUS');
mysql> SELECT * FROM demo6;
+--------------+
| country_name |
+--------------+
| US           |
| UK           |
| AUS          |
+--------------+

রিড লক লাগানো

mysql> LOCK TABLES demo6 READ;
Query OK, 0 rows affected (0.00 sec)

ইনসার্ট চেষ্টা (এরর)

mysql> INSERT INTO demo6 VALUES ('IND');
ERROR 1099 (HY000): Table 'demo6' was locked with a READ lock and can't be updated

আনলক করে ইনসার্ট

mysql> UNLOCK TABLES;
Query OK, 0 rows affected (0.00 sec)

mysql> INSERT INTO demo6 VALUES ('IND');
Query OK, 1 row affected (0.09 sec)

ফাইনাল ফলাফল

mysql> SELECT * FROM demo6;
+--------------+
| country_name |
+--------------+
| US           |
| UK           |
| AUS          |
| IND          |
+--------------+

সতর্কতা: LOCK TABLES সেশন-স্কোপড। কানেকশন বন্ধ হলে অটোমেটিক আনলক হয়। লং-রানিং লক এড়াতে UNLOCK TABLES দ্রুত দিন।

  1. Java ব্যবহার করে MySQL টেবিলে রেকর্ড সন্নিবেশ করা

  2. MySQL-এ BEFORE INSERT TRIGGER ব্যবহার করে অটোমেটিক্যালি বর্তমান তারিখ ইনসার্ট করুন

  3. MySQL-এ AUTO_INCREMENT টেবিলে INSERT INTO SELECT ব্যবহার করা

  4. MySQL-এ LPAD() এবং COALESCE() দিয়ে প্রিসিডিং জিরো সহ আইডি জেনারেট করা