DB 데이터 복사 관련 쿼리좀 봐주세요..

DB 데이터 복사 관련 쿼리좀 봐주세요..

QA

DB 데이터 복사 관련 쿼리좀 봐주세요..

답변 1

본문

현재 계정마다 게시판을 부여하고 있는데 서로간에 '공유기능' 이라는 것을 통해 A계정의 게시판글을 B계정의 게시판에 복사하려고 하는데요, move.php를 참고 하여 아래와 같이 체크된 글의 데이터가 Insert 되긴 하는데 wr_id값이 중복되면 쿼리가 실행이 되지 않습니다. 



sql_query("insert into `대상테이블` select * from `현재테이블` where wr_id = '$wr_id_list[$i]' ");


다시 말씀드리면, 복사하고자 하는 A게시판 글의 wr_id 가 1,2번이고 복사되어 들어가는 대상 테이블글의 wr_id가 1,2와같이 같다면 추가되는 글의 wr_id는 3,4처럼 증가된값이 들어가게 하는 부분을 move_update.php에 어떤부분이 그렇게 작동 하는 건가요?

이 질문에 댓글 쓰기 :

답변 1

대상, 현재 테이블이 동일한 테이블이고

해당 필드가 AUTO_INCREMENT 로 잡혀있으면 프로그램 에서의 설정이랑은 상관없이

DB 단에서 자체적으로 튕겨내는 키중복 오류입니다.


대충 아래와 같은 테이블이 있다고 하면


CREATE TABLE a(

wr_id int(11) NOT NULL AUTO_INCREMENT,

f1 varchar(20) NOT NULL,

f2 varchar(20) DEFAULT NULL, 

PRIMARY KEY(wr_id)

);


INSERT INTO a (f1,f2) SELECT f1, f2 FROM a WHERE wr_id = 1;


이렇게 되어야 합니다.

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 1
© SIRSOFT
현재 페이지 제일 처음으로