2014-03-26 2 views
-1

oracle (SQL * Plus)에서 행 차단이 작동하는 방식을보고 싶습니다. 따라서 두 개의 세션 또는 사용자가 하나의 테이블과 상호 작용하고 잠금을 확인하려고합니다. 이 세션이나 사용자를 만드는 방법은 무엇입니까? 나는이 질문이 아주 어리 석다 고 생각하지만 나는 그것을 이해할 수 없다.오라클에 새 세션 생성

답변

0

다소 넓지 만

테이블을 만드는 경우 레코드를 입력하십시오. 그런 다음 쿼리를 실행하려면 도구 이제이 잠겨 적어도 그 행으로 갱신 트랜잭션이

Begin Transaction 
Update myTytable set MyColumn = 'Fred' Where MyKey = 1 

그런 짓을.

는 다른 연결을 열고이 시간 초과 될 때까지 그 행이 때문에이 쿼리가 차단됩니다 잠겨, 또는 당신이 첫 번째 쿼리로 돌아가

Update myTytable set MyColumn = 'Bill' Where MyKey = 1 

을 수행하고 커밋 또는 롤백 트랜잭션을 수행 .

잠금에 더 많은 것이 있으며 dbms에 매우 한정적 일 수 있지만 잠금을 강제로 시작해야하므로 조사 할 수 있습니다.

0

두 터미널을 열고 각 터미널에서 SQL * Plus로 연결하십시오. 그러면 두 세션이 열립니다. (단일 사용자이면 충분합니다.)