묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
잠금(LOCK, LOCKING) 기능에 대한 질문인데요..
2003.02.12 10:50
안녕하세요??
db에 1씩 증가하는 값을 넣으려는데요..
auto_increment 옵션을 사용하지 않으려고 하거든요..
릴레이션으로 인한 여러 primary key값 때문입니다..
그렇다면 직접 max값을 가져와서 1 증가해서 insert를 해야 하는데
중복방지를 위해서 락을 걸라고 하거든요..??
뭐 거의 그럴 일은 없겠지만 혹시나 일어날 수 있는 중복값에 대한 대비를 하려구요..
php 소스상에서 락을 걸고 싶은데요..
이런 식으로.. ^o^
== lock ==
select max(idx) as cnt from [TABLE]
insert into [TABLE](idx, ...) values(cnt+1, ...)
== unlock ==
위는 아주 단순하게 써 보았는데요.. 저런 식으로 php 소스에서 쿼리하는 부분의 위, 아래로 락을 걸고 싶어서요..
asp에서는 그런 함수가 있어서 사용했었는데
php에도 있을 것 같아서 질문합니다..
꼭 좀 갈켜주세요.. ^o^
글고, 저렇게 1 증가시키는 방법으로는
증가만 시키는 별도의 테이블을 사용하기도 하고,
트리거를 사용하기도 하고,
등등 여러 방법이 있는 걸로 알고 있는데요..
중복을 방지하면서 괜찮은 팁이나 테크 있으심 갈켜주세요.. ^o^
감사합니당 :)
db에 1씩 증가하는 값을 넣으려는데요..
auto_increment 옵션을 사용하지 않으려고 하거든요..
릴레이션으로 인한 여러 primary key값 때문입니다..
그렇다면 직접 max값을 가져와서 1 증가해서 insert를 해야 하는데
중복방지를 위해서 락을 걸라고 하거든요..??
뭐 거의 그럴 일은 없겠지만 혹시나 일어날 수 있는 중복값에 대한 대비를 하려구요..
php 소스상에서 락을 걸고 싶은데요..
이런 식으로.. ^o^
== lock ==
select max(idx) as cnt from [TABLE]
insert into [TABLE](idx, ...) values(cnt+1, ...)
== unlock ==
위는 아주 단순하게 써 보았는데요.. 저런 식으로 php 소스에서 쿼리하는 부분의 위, 아래로 락을 걸고 싶어서요..
asp에서는 그런 함수가 있어서 사용했었는데
php에도 있을 것 같아서 질문합니다..
꼭 좀 갈켜주세요.. ^o^
글고, 저렇게 1 증가시키는 방법으로는
증가만 시키는 별도의 테이블을 사용하기도 하고,
트리거를 사용하기도 하고,
등등 여러 방법이 있는 걸로 알고 있는데요..
중복을 방지하면서 괜찮은 팁이나 테크 있으심 갈켜주세요.. ^o^
감사합니당 :)