ช่วยหน่อยครับ การดึง PK มาไว้ใน FK ยังไง อธิบายโค๊ดที

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา ช่วยหน่อยครับ การดึง PK มาไว้ใน FK ยังไง อธิบายโค๊ดที

ช่วยหน่อยครับ การดึง PK มาไว้ใน FK ยังไง อธิบายโค๊ดที
CREATE TABLE IF NOT EXISTS `maintopics` (
`main_id` int(10) NOT NULL COMMENT 'รหัสหัวข้อหลัก ',
  `questn_id` int(10) NOT NULL COMMENT 'รหัสแบบสอบถาม',
  `maint_n` varchar(60) COLLATE utf8_unicode_ci NOT NULL COMMENT 'ชื่อหัวข้อหลัก'
) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

CREATE TABLE IF NOT EXISTS `subheading` (
`subh_id` int(10) NOT NULL COMMENT 'รหัสหัวข้อย่อย',
  `main_id` int(10) NOT NULL COMMENT 'รหัสหัวข้อหลัก',
  `n_subh` varchar(60) COLLATE utf8_unicode_ci NOT NULL COMMENT 'ชื่อหัวข้อย่อย'
) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;


อยากดึงPKของ maintopics มาไว้ใน subheading ยังไงรหรอ ครับ อธิบายโค๊ดหน่อย 


Wichai Audjai 202.29.58.xxx 22-12-2015 15:36:08

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1
main_id กับ sub_id น่าจะกำหนดเป็น auto_increment

แล้วก็ศึกษากรณีต้องการบันทึกข้อมูล หัวข้อหลัก กับหัวข้อย่อยพร้อมกัน เพิ่มหัวข้อหลักก่อน แล้วเรียกใช้ค่า insert_id
หรือค่า main_id หลักที่เพิ่งบันทึกล่าสุด แล้วเอาค่านั้นไปบันทึกหน้าการคิวรี่ หัวข้อย่อย ดูเนื้อหานี้เป็นแนวทาง

http://php.net/manual/en/mysqli.insert-id.php

แต่ถ้ากรณีต้องการให้สามารถเลือหัวข้อหลักได้ หลักวิะีก็คือ ดึง main_id มาไว้ใน select option ให้เลือก
แล้วก็บันทึกค่าไปพร้อมกับบันทึก หัวข้อย่อย


ninenik 180.183.9.xxx 22-12-2015






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ