2013-04-18 3 views
0

데모 목적으로 만 사용하십시오. 나는 두 개의 테이블 "퀴즈"와 "질문"을 가지고있다.INSERT INTO 테이블 VALUES 쿼리의 일부로 기본 키 추가

퀴즈 테이블에는 다음 열

  • quiz_id (PK)를 질문 테이블 다음 열을 포함

  • quiz_title

    ,
    • question_id (PK)
    • quiz_ID (FK) 내가 질문 테이블에서 "QUESTION_TEXT"에 질문 텍스트를 삽입하려고

  • QUESTION_TEXT.

    성공적으로 최신 quiz_id를 검색하여 질문 테이블에 삽입 할 수 있습니다.

    INSERT INTO question (quiz_id) SELECT max(quiz_id) FROM quiz

    은 그러나 나는 또한 질문 텍스트를 추가해야합니다.

    INSERT INTO question (question_text) VALUES ("question_text_sample")

    그러나 FK 정보 (quiz_id가) 쿼리에 제공되지 않기 때문에 나는 오류가 점점 오전 : 나는 이것을 시도했다.

    위의 쿼리를 결합하고 싶지만 작동하는 해결책을 찾을 수 없습니다.

    INSERT INTO quiz (quiz_title) values ("quiz_title_sample") INSERT INTO question (quiz_id, question_text) VALUES (LAST_INSERT_ID(), "question_text")

    또 다른 시도 :

    INSERT INTO question (quiz_id, question_text) VALUES (SELECT max(quiz_id) FROM quiz , "question_text_sample")

    사람이 나에게 몇 가지 지시 사항을 전해 주 시겠어요

    나는 다음과 같은 시도?

    미리 감사드립니다.

  • 답변

    0

    당신은 확실히로, 때문에 FK의 관계 (첫 번째 퀴즈에 삽입 할 필요가 당신).

    사용자 변수에 LAST_INSERT_ID()를 저장 한 다음 INSERT INTO ... SELECT (미안하지만 MySQL에 익숙하지 않은 경우)를 수행 할 수 있습니까?

    +0

    예, 퀴즈에 삽입 실제로 내 질문에 포함되어 있습니다. 나는 그것이별로 눈에 띄지 않는다는 것을 깨닫는다. 그러나 질문 테이블에 데이터를 추가하기 전에 먼저 퀴즈 테이블에 데이터를 삽입합니다. Akash가 제공 한 솔루션이 저에게 효과적이었습니다. 입력 해 주셔서 감사합니다. – BustedSanta

    0

    귀하의 퀴즈 ID가 AUTO_INCREMENT (http://dev.mysql.com/doc/refman/5.6/en/example-auto-increment.html)입니까?퀴즈 (quiz_title) 값으로

    INSERT ('quiz_title_sample') 질문 INTO

    INSERT는 (quiz_id, QUESTION_TEXT) 가치 (LAST_INSERT_ID(), '질문 텍스트')

    +0

    예, quiz_id는 (퀴즈 테이블에있는) auto_increment입니다. Akash가 제공 한 솔루션이 저에게 도움이되었습니다. 귀하의 의견을 보내 주셔서 감사합니다. – BustedSanta

    관련 문제