LOCK TABLES 쿼리를 제거하려면 UNLOCK TABLES를 사용해야 합니다.
테이블을 만들어 봅시다 -
mysql> create table demo6 −> ( −> country_name varchar(100 −> ) −> ); Query OK, 0 rows affected (1.51 sec)
insert 명령을 사용하여 일부 레코드를 테이블에 삽입하십시오 -
mysql> insert into demo6 values('US'); Query OK, 1 row affected (0.11 sec) mysql> insert into demo6 values('UK'); Query OK, 1 row affected (0.08 sec) mysql> insert into demo6 values('AUS'); Query OK, 1 row affected (0.11 sec)
select 문을 사용하여 테이블의 레코드 표시 -
mysql> select *from demo6;
이것은 다음과 같은 출력을 생성합니다 -
+--------------+ | country_name | +--------------+ | US | | UK | | AUS | +--------------+ 3 rows in set (0.00 sec)
여기, 나는 읽기 연산자에 대해서만 위의 테이블에 잠금이 있습니다. 다음은 쿼리입니다 -
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
UNLOCK TABLES를 사용하면 같은 테이블에 레코드를 삽입할 수 있습니다 -
mysql> UNLOCK TABLES; Query OK, 0 rows affected (0.00 sec)
insert 명령을 사용하여 일부 레코드를 테이블에 삽입하십시오 -
mysql> insert into demo6 values('IND'); Query OK, 1 row affected (0.09 sec)
select 문을 사용하여 테이블의 레코드 표시 -
mysql> select *from demo6;
이것은 다음과 같은 출력을 생성합니다 -
+--------------+ | country_name | +--------------+ | US | | UK | | AUS | | IND | +--------------+ 4 rows in set (0.00 sec)