2015-01-21 4 views
0

이 질문은 매우 간단 할 수 있지만 해결책을 찾기 위해 고심하고 있습니다. 다음은 두 개의 복합 기본 키 (order_id, order_detail_id)가있는 테이블 순서입니다. 이것은 삽화의 목적 일 뿐이며 내 prd 테이블은 같은 개념입니다.복합 기본 키가있는 테이블에 새 레코드 삽입

주문

order_id | order_detail_id | order_name 

내 질문은 기존 ORDER_ID에 새 레코드를 삽입하는 방법입니다.

1 | 1 | 'Order 1 Detail 1' 
1 | 2 | 'Order 1 Detail 2' 
2 | 1 | 'Order 2 Detail 1' 

지금 내가 이노와 MySQL을 5 사용하는 기존의 순서 (1)에 새 주문 세부 사항에 원의이 기존 행입니다 가정 해 봅시다. 어떤 도움을 주셔서 감사합니다. 오더로

+0

1 'DUPLICATE KEY UPDATE' ON INSERT http://dev.mysql.com/doc/refman /5.0/en/insert-on-duplicate.html – dan08

+0

order_id = 1에 대한 새 레코드를 삽입하는 경우 order_detail_id = 3이 아닌가? 기본 키는 여전히 고유합니다. –

+0

@GB 예 order_detail_id는 3이 될 것이지만 DB에 무엇이 있는지 알지 못하고 런타임에 관리하기를 원합니다. – kewlb

답변

0

삽입 ORDER_ID 선택 맥스 (order_detail_id) + 1 '주문 1 세부 3'여기서 ORDER_ID =

+0

* 문제가 * if *가 아니라 * when *가 문제를 일으킬 것입니다. order_detail 테이블에 자동 증가를 만들고 line_numbers가 정말로 필요하면'select'에 할당하십시오 –

관련 문제