테스트 사이트 - 개발 중인 베타 버전입니다

LAST_INSERT_ID() 함수 사용법에 관해서.. 채택완료

sinbi 6년 전 조회 3,444

https://www.w3schools.com/sql/func_mysql_last_insert_id.asp">https://www.w3schools.com/sql/func_mysql_last_insert_id.asp

 

sql 공부 중인데, w3school 에제가 부실해서 그런지 이해가 잘...

에제가 달랑 이거네요. ㅡㅡ;

SELECT LAST_INSERT_ID();

 

찍어보니 결과값이 0 나오는 것 같은데,,

그누에서 써먹을 경우 보통 어떤 용도로 써먹을 수 있을까요?

 

테이블에 삽입되거나 업데이트 된 마지막 행의 AUTO_INCREMENT id를 반환할 때 쓰는 거라는데..

직관적인 예 하나만 들어주시면 감사해요.

 

구글링 해봤는데, 모두 도움이 안 되네요. ㅜㅜ

댓글을 작성하려면 로그인이 필요합니다.

답변 5개

채택된 답변
+20 포인트
잉끼s
6년 전

그누보드

/bbs/write_update.php 중

 

280 라인 부근에 있는데 

</p>

<p>$wr_id = sql_insert_id();</p>

<p>

구문을 보세요.

이미 쓰고 있습니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

s
sinbi
6년 전
비슷한 기능하는 php 함수 사용 중이군요. 감사합니다. ^^

댓글을 작성하려면 로그인이 필요합니다.

그누보드를 예로 들면 g5_write_free에 글을 등록하면서 파일을 3개 같이 등록했다고 가정을 합니다.

view 페이지에서 첨부 파일을 갖고 오려면 글이나 첨부 파일에나 공통적으로 wr_id를 등록해 놓으면 갖고 오기 쉽겠지요.

예를 들어 wr_id가 10번인 글이 지금 막 등록이 되면서 이 10번에 대한 첨부 파일들에게 전부 같은 wr_id를 부여해야 view.php?wr_id=10 페이지에서 첨부 파일도 3개를 뿌릴 수가 있습니다.

그러면 글이 등록되면서 생성된 wr_id의 값을 첨부 파일들에게도 등록을 해야 하겠지요.

이럴 때 쓰는 게 last_insert_id 함수(mysql)입니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

s
sinbi
6년 전
뿌연 이해 상태가 아주 선명해졌어용. ( ^ _______ ^ ) ==b

댓글을 작성하려면 로그인이 필요합니다.

6년 전

처음에 글쓰기 할떄는 wr_parent의 값은 아무것도 입력이 되지 않습니다. 

update 구문을 통해서 wr_parent의 값을 update하게 됩니다.

 

예를 들어 지금 글쓰기를 해서 wr_id값이 1이라고 하면 wr_id 값을 이용해서 글쓰기를 함과 동시에 wr_id의 값을 다른 테이블에 입력해야 하는 경우에 많이 사용됩니다.

즉 테이블을 연결 시키는 경우에 많이 사용됩니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

s
sinbi
6년 전
자세한 설명 감사합니다. 덕분에 이해했어용. ^^;

댓글을 작성하려면 로그인이 필요합니다.

6년 전

그누보드에서는 글을 입력하면 글을 쓴 테이블에 wr_parent 의 값을 지금 현재 글쓰기한 값으로 업데이트 하고 있습니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

s
sinbi
6년 전
그누보드에서는 글을 입력하면
글을 쓴 테이블에 wr_parent 의 값을 지금 현재 글쓰기한 값으로 업데이트....

이 말이 무슨 말인지 ? ㅎ

아마, 아래 코드 설명하신 것 같은데, 감이 잘....

// 부모 아이디에 UPDATE
sql_query(" update $write_table set wr_parent = '$wr_id' where wr_id = '{$wr_id}' ");

댓글을 작성하려면 로그인이 필요합니다.

근대 저걸 왜쓰는 거여요 ?

구지 쓰다고 하면 상품을 대량을 로 올릴경우나 쓸거같은데..

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

s
sinbi
6년 전
걍,,,있길래 어디에 쓰는 물건인가....알아보고 있었어용. ㅎ

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인