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
운영게시판
최근게시물
DB2 Q&A 1361 게시물 읽기
No. 1361
INSERT, UPDATE 문에 사용하는 WITH UR의 의미?
작성자
이준식(ysaraha)
작성일
2007-06-08 10:20ⓒ
2007-06-08 10:21ⓜ
조회수
9,792

SELECT문에만 사용하던 WITH UR을 INSERT, UPDATE, DELETE에 사용해도

별다른 에러가 발생하지 않았습니다.

혹시 WITH UR을 INSERT, UPDATE, DELETE문에 사용하면 의미와 처리가 달라지나요?

ex :
INSERT INTO TEST (A) VALUES ('A') WITH UR;
UPDATE TEST SET A = '1' WITH UR;

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

무의미합니다.

WITH ~ 에 관계없이, DBMS는 삽입, 갱신, 삭제되는 모든 행에 독점 잠금을 합니다.
따라서, 응용프로그램 프로세스에서 변경된 행을 COMMIT, ROLLBACK 하기 전까진
어떤 다른 응용프로그램 프로세스에 의해서도 변경되지 않게 합니다. 
물론 다른 응용프로그램 프로세스에서 WITH UR을 사용하면 읽을수는있습니다.

박진복(pjb708)님이 2007-06-08 11:46에 작성한 댓글입니다.
이 댓글은 2007-06-08 11:52에 마지막으로 수정되었습니다.

답변 감사합니다. *^^*

이준식(ysaraha)님이 2007-06-11 09:57에 작성한 댓글입니다.

select , insert , update 등등 사용해도 아무런 문제가 발생하지 않습니다..

with ur 의 의미는 밑의분의 말씀하신것이 맞습니다..

어떤 테이블에 insert작업을 하고 있다 그런데 with ur 를 쓰게되면

다른사람이 insert 하고 있는 테이블을 insert 된 시점까지 데이터를 select를 할수가 있습니다..

ibm에서는 가능한 with ur를 쓰는 것을 권장하는 것 같습니다..

많이 사용하는 테이블을 with ur을 주지 않고 사용하면 다른 사람들은 접근을 할수가 없어

select 를 할수가 없게 됩니다..



김종현(nativekim)님이 2007-06-24 21:30에 작성한 댓글입니다.

처리성격에 따라서 달리 할 필요가 있을듯 합니다. 아래현상이 발생 할 수도..

더티 읽기 :
1. 작업1에서 행을 삽입,수정합니다.
2. 작업2는 작업1에서 COMMIT을 수행하기 전에 행을 읽습니다.
3. 그런후 작업1이 ROLLBACK을 수행하면, 작업2는 존재하지 않는 행을 읽은 것이 됩니다. 

반복 불가능한 읽기 :
1. 작업1에서 행을 읽습니다.
2. 작업2가 행을 수정하고 COMMIT을 수행합니다.
3. 그런후 작업1이 행을 다시 읽으면, 수정된 값을 받을 수도 있습니다. 

팬텀 :
1. 작업1이 검색조건을 만족시키는 n행 집합을 읽습니다.
2. 그런후 작업2는 검색조건을 만족시키는 하나 이상의 행을 INSERT합니다.
3. 작업11이 같은 검색조건으로 첫번째 읽기를 반복하면, 원래의 행과 삽입된 행을 얻습니다. 

박진복(pjb708)님이 2007-06-25 18:22에 작성한 댓글입니다.
이 댓글은 2007-06-25 18:24에 마지막으로 수정되었습니다.
[Top]
No.
제목
작성자
작성일
조회
1364TRANSLATE 문제 [1]
초보
2007-06-21
8929
1363Insert 작업시 시스템 날짜을 넣고 싶은데 안되네요?? [1]
초보자
2007-06-20
8971
1362쿼리를 실행하는 영역에 따라서 결과값이 다르게 나옵니다. [1]
이준식
2007-06-14
8664
1361INSERT, UPDATE 문에 사용하는 WITH UR의 의미? [4]
이준식
2007-06-08
9792
1360컬럼연결 [4]
이삼봉
2007-06-05
9658
1359IBM DB2 Data Provider for .NET Framework 2.0 이거 어디서 다운받나요
도데체
2007-06-01
8307
1357Solaris 장비에서 ODBC(CLI)를 이용한 프로그램 컴파일...
김재호
2007-05-28
7512
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다