database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
ㆍPostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
PostgreSQL Q&A 4760 게시물 읽기
No. 4760
로우레벨 락에 대해서..
작성자
초본데염
작성일
2003-06-18 18:39
조회수
2,031

1.begin

2.update a table

3.요런 저런 처리

4.commit

 

2에서 업데이트를 하는데 그전히 필히 이 트랜잭션단위에서 a에 락을 걸어줘야 하고 작업의 성격상 select 까지 못하게 해야 합니다.

 

제가 궁금한건 a table 전체에 락을 걸어버리면 업데이트를 하지 않는 다른 row까지 불필요하게 select를 못하게 될것 같은데 업데이트 하는 row만 락을 걸수 없을까요?

 

row level락인지 뭔지 여기 저기서 많이 들어는 봤는데 lock table a where euid='$value'이렇게 거는건 아닐걸고 대충 ROW EXCLUSIVE MODE 요놈이 맞을거 같은데 어떻게 거는건지 ,실제 가능한건지도 잘모르겠습니다.

업데이트 하는 특정 row만 트랜잭션내에서 lock을 거는 방법이 있을까요?

 

부탁드립니다.

이 글에 대한 댓글이 총 1건 있습니다.

select 구문을 보시면 for update 라는 키워드가 있습니다. update 구문 전에 한번 실행시키면 되지 않을까 싶습니다.

자세한 것은 select 구문 도움말을 참조하세요.

김상기(ioseph)님이 2003-06-19 10:35에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
4764select count(*) 의 속도 문제 [3]
김한성
2003-06-23
4193
4767┕>답변 감사합니다.
김한성
2003-06-24 10:35:51
1487
4763해당 주의 시작날짜를 알고 싶습니다. [1]
이승배
2003-06-20
1827
4761자료입력문제 [1]
길동무
2003-06-19
1239
4760로우레벨 락에 대해서.. [1]
초본데염
2003-06-18
2031
4759cron을 이용한 작업에 대해.. [2]
초본데염
2003-06-16
2022
4758답글-이런경우 복구는 어케하죠? [답장이 안되요] [1]
초보임니다
2003-06-13
2252
4755이런경우 복구는 어케 하죠? [1]
초보임니다
2003-06-13
2054
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.020초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다