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 4661 게시물 읽기
No. 4661
트랜잭션과 lock
작성자
왕초보
작성일
2003-04-14 12:28
조회수
1,306

begin

1.table A에 insert

2.1의 A 테이블에서 자동 증가한 값을 가져온다.

3.2에서 가져온값으로 다른 테이블에 insert 한다.

commit

 

1에서 자동증가는 (serial)시퀸스에서 되는데요.

2에서 curval(시퀸스)해서 가져올라구 하는데

1에 입력한 다음 2에서 값을 가져오기전까지 A테이블에 새로운

자료가 입력이 안돼야 하는데 lock을 걸어줘야 하죠?

 

근데 이거 어케 lock 걸어줘야 할지..

그냥 트랜잭션안이니까 별도로 lock을 안걸어줘도 될까요?

누가 답변좀...

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

그런 경우는 일반적으로

A 테이블에서 serial 필드를 하나 두고,

A에 insert 하기 전에 응용프로그램에서

insert 할 이번의 serial 값을 가져옵니다.

select nextval('시퀀스이름') 이런 형태로

그 다음 그 가져온 새 serial 값을 B 테이블에서도 그대로 사용하는게지요.

그러면, lock 부분에 신경을 안써도 될겝니다.

김상기(ioseph)님이 2003-04-15 02:10에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
4665postgresql7.2.1_win32 설치와 사용 [6]
대훈
2003-04-15
1506
4664트리거와 룰의 사용에 대해.. [2]
초본데염?
2003-04-14
1417
4662데몬이 32개만 되면 이상현상이.... --;
한성호
2003-04-14
1267
4663┕>Re: 데몬이 32개만 되면 이상현상이.... --;
엠브리오
2003-04-14 15:14:12
1248
4661트랜잭션과 lock [1]
왕초보
2003-04-14
1306
4660상수 infinity 는 어떻게 사용하나요? [1]
1권
2003-04-14
1168
4659serial로 최근 증가한값을 알수 있는 방법? [1]
초본데요.
2003-04-14
1513
4658초보질문입니다. [2]
궁금이
2003-04-14
1135
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다