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 7611 게시물 읽기
No. 7611
정말 초보적인 Query 질문입니다 (__)
작성자
초보개발자
작성일
2009-02-11 14:20
조회수
6,211

member
-------------------
member_idx | name |
-------------------
   1       | 이름 |
--------------------

contract
-----------------------------------------
contract_idx | member_idx | contract_name
------------------------------------------
  1          |   1        |  계약이름
------------------------------------------

두개의 Table이 있습니다.

회원가입을 하게되면 member table member_idx auto값으로
들어가게 되고, contract table에도 contract_idx가 auto값으로
들어갑니다. 하지만 문제는 contract table의 member_idx가
방금들어간 회원의 member_idx를 저장해야 하는데,
제가 만든 알고리즘은 member table의 Data 들어가면, 바로 SELECT max(member_idx)
Query를 실행해서 방금들어간 member_idx를
가져와 변수에 저장후 그변수를 가지고 contract의 Data를
Insert 할수있도록  만들었습니다. 문제점은 동시에 가입하게 되거나
같이 실행이 된다면 인덱스 변호가 contract table의
잘못들어갈수있는 경우가 있습니다.
이문제를 해결할수있는 방법이 없을까요? T.T
도와주세요~~

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

INSERT ... RETURNING 구문을 사용하세요.


http://www.postgresql.org/docs/8.3/static/sql-insert.html


단, 8.2 버전 이상에서만 사용할 수 있는 확장기능입니다.

김영우님이 2009-02-12 00:08에 작성한 댓글입니다. Edit

INSERT ..RETUNNIG이라는 것이 있었군요.


이런--;; 


 중요한 정보 감사합니다

주성진(zsz)님이 2009-02-12 10:04에 작성한 댓글입니다.
이 댓글은 2009-02-12 10:05에 마지막으로 수정되었습니다.
[Top]
No.
제목
작성자
작성일
조회
7615날짜 문자열->날자형으로 바꾸려면? [1]
전창화
2009-02-17
7994
7614윈도우 GUI 관리 에서 질문있습니다. [2]
souler
2009-02-14
6877
7613pgAdmin 접속문제 [2]
hhh
2009-02-12
7616
7611정말 초보적인 Query 질문입니다 (__) [2]
초보개발자
2009-02-11
6211
7607확장자가 dump 인 덤프파일도 있나요? [2]
souler
2009-02-06
7741
7606PostgreSQL 8.3.6 Released [1]
김영호
2009-02-06
7310
7604psql 함수관련 하나만 질문드립니다 [2]
이만호
2009-02-05
7062
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다