2013-09-23 1 views
0

안녕을하는 동안은 내가 root_part_id이 part_id의 가치를 얻을해야이 테이블에 삽입 쿼리를 할 필요가설정 아이디 insertQuery

PART{ 
part_id :long,Auto Increment 
parent_part_id :long 
root_part_id :long 
} 

같은 MYSQL 테이블을 가지고있다. 다른 경우에는 부모 및 루트 파트 ID를 알고 있습니다. 하지만 루트 부분의 삽입을 수행하는 동안이 쿼리가 필요합니다. 나는이 삽입 쿼리 후에 업데이트 쿼리를 실행해야한다는 옵션이 있지만 단일 쿼리에서 솔루션이 필요하다는 것을 알고 있습니다. 테이블 이름에 대한

DELIMITER $$ 
CREATE TRIGGER `before_insert_PART` 
BEFORE INSERT ON `PART` FOR EACH ROW 
BEGIN 
     SET NEW.root_part_id = NEW.part_id; 
END 
$$ 
DELIMITER ; 

PS,보다 효율적으로 사용하는 유일한 작은 자 :

+0

원하는 텍스트의 예를 줄 수 있습니까? 긴 텍스트 설명에서 분실했습니다. – user4035

+0

삽입 쿼리를 실행하면 root_part_id가 생성 된 part_id로 설정되어야합니다 –

답변

1

당신은 트리거를 사용할 수 있습니다. OS 비 호환성으로 이어질 수 있으며 Linux 이름은 대소 문자를 구분하며 Windows에서는 그렇지 않습니다.