ตอนที่ 12 phpMyAdmin : กรอกข้อมูล (INSERT)

ได้เวลากรอกข้อมูลแล้วนะคะ
ตามกฏการอ้างอิง เราจะต้องกรอกข้อมูลที่ตารางไหนก่อน ?

กฏคือ คอลัมน์ book_type_id ในตาราง book
จะต้องเป็นหมายเลข id ของตาราง book_type เท่านั้น

หมายความว่า ถ้าไม่มีหมายข้อมูลในตาราง book_type
เราก็จะไม่สามารถกรอกข้อมูลในตาราง book ได้ ใช่หรือไม่ ???

มาทดสอบกันค่ะ กรอกข้อมูลลงตาราง book ด้วยกันนะ

mystou-com-php-pdo-basic-2-2-01

คอลัมน์ id ไม่ต้องกรอกนะคะ เรากำหนดให้เลข run อัตโนมัติเอาไว้
กรณีนี้กรอกเลข 1 ที่ คอลัมน์ book_type_id
กดปุ่ม “Go” ค่ะ

mystou-com-php-pdo-basic-2-2-02

ปรากฏข้อผิดพลาด (error) ในการอ้างอิงขึ้นมา

งั้นลองไม่กรอกอะไรในคอลัมน์ book_type_id ดูนะคะ

mystou-com-php-pdo-basic-2-2-03

กดที่ปุ่ม “Go” อีกครั้งค่ะ
เจอข้อผิดพลาดแบบเดิมเลย…..

mystou-com-php-pdo-basic-2-2-02

เราได้เรียนรู้อะไรจาก error นี้บ้างคะ ?

เอาล่ะ เรามาทำในสิ่งที่ถูกต้องกัน
ไปกรอกรายการประเภทหนังสือสัก 2 ประเภทค่ะ
(ที่ตาราง book_type)

mystou-com-php-pdo-basic-2-2-04

กรอกข้อมูลแล้วคลิกที่ปุ่ม “Go” นะคะ

คลิกที่ปุ่ม “Browse
เราจะได้ข้อมูล ขึ้นมา 2 รายการ
ได้ id 1 กับ 2 มาละ ^_^

mystou-com-php-pdo-basic-2-2-05

คราวนี้กลับไปกรอกข้อมูลหนังสือที่ตาราง book กันค่ะ

mystou-com-php-pdo-basic-2-2-06

กลับมาคราวนี้สังเกตุเห็นอะไรมั้ยคะ ?
คอลัมน์ book_type_id มีเลข 1 และ 2 ให้เลือกค่ะ

ซึ่งหมายเลข 1 คือ หนังสือประเภท การพัฒนาโปรแกรม
และหมายเลข 2 คือ หนังสือประเภท ฐานข้อมูล

ลองกรอกข้อมูลหนังสือเกี่ยวกับการเขียนโปรแกรมไป 2 เล่มค่ะ

mystou-com-php-pdo-basic-2-2-07

เสร็จแล้วคลิกที่ปุ่ม “Go” นะคะ

คลิกที่ปุ่ม “Browse
เราจะได้รายการ 2 รายการที่กรอกลงไปขึ้นมา

mystou-com-php-pdo-basic-2-2-08

คราวนี้ถ้าเรามีหนังสือ ประเภท การท่องเที่ยวล่ะ ?
เราจะกรอกข้อมูลหนังสือยังไง ?

… ก็ไปเพิ่มประเภทหนังสือท่องเที่ยวก่อนสิคะ

mystou-com-php-pdo-basic-2-2-09

คลิกที่ปุ่ม “Go
แล้วคลิกเมนู “Browse” เราก็จะได้ประเภทหนังสื่อการท่องเที่ยวขึ้นมา
โดย id คือ 3

mystou-com-php-pdo-basic-2-2-10

ไปที่ตาราง book แล้วกรอกข้อมูลหนังสือการท่องเที่ยวลงไปค่ะ
เลือก id คือ 3 นะคะ

mystou-com-php-pdo-basic-2-2-11

คลิกที่ปุ่ม “Go
แล้วคลิกเมนู “Browse” เราก็จะได้ประเภทหนังสื่อการท่องเที่ยวขึ้นมา

mystou-com-php-pdo-basic-2-2-12

พอจะเห็นประโยชน์ของการกำหนดค่าการอ้างอิงระหว่างตารางหรือยังคะ ?
ถ้าเราเข้าใจมัน และใช้งานได้อย่างถูกต้อง
สิ่งเหล่านี้จะมีประโยชน์มาก กฏต่าง ๆ มันเกิดขึ้นมาเพื่อแก้ปัญหา
แต่ถ้าเราใช้ไม่เป็น มันก็ก่อให้เกิดปัญหาได้เหมือนกัน

อย่างน้อย ๆ เราก็จะได้รู้ว่าไม่มีหนังสือเล่มไหนไม่มีหมวดหมู่แน่นอน
ทุก ๆ เล่ม จะต้องถูกกำหนดค่าหมวดหมู่ก่อนถึงจะบันทึกค่าได้

ลองกรอกข้อมูลเล่น ๆ ไปก่อนได้นะคะ
ตอนนี้ถือว่าทุกคนมีความรู้พื้นฐานมากพอแล้ว
ในตอนต่อ ๆ ไป อาจจะมีการสมมติเหตุการณ์ต่าง ๆ
เราไม่จำเป็นต้องใช้ข้อมูลเหมือนกันค่ะ

แต่ต้องตรวจสอบคำตอบของตัวเองให้ถูกต้อง แค่นั้นก็พอ ^_^


เรื่องที่เกี่ยวข้อง :
PHP and PDO Basic : แบบ 2 ตาราง
ตอนที่ 11 phpMyAdmin : การสร้างตารางที่มีความสัมพันธ์กัน 2 ตาราง
ตอนที่ 12 phpMyAdmin : กรอกข้อมูล (INSERT)
ตอนที่ 13 PHP & PDO : การผูกค่าตัวแปรด้วย bindValue()
ตอนที่ 14 PHP & PDO : การกำหนดพารามิเตอร์ด้วย bindParam()
ตอนที่ 15 PHP & PDO : การส่งค่าทาง URL แบบ GET
ตอนที่ 16 PHP & PDO : MySQL INNER JOIN [ coming soon !!! ]
ตอนที่ 17 PHP & PDO : MySQL OUTER JOIN [ coming soon !!! ]
ตอนที่ 18 PHP & PDO : การ Insert ข้อมูล
ตอนที่ 19 PHP & PDO : การ Insert ข้อมูลและขอ id กลับมา lastInsertId()
ตอนที่ 20 PHP & PDO : การ Delete และนับแถวที่มีการเปลี่ยนแปลง rowCount()
ตอนที่ 21 PHP & PDO : การ Update และนับแถวที่มีการเปลี่ยนแปลง rowCount()


ธมนวรรณ มณีจันทร์

ธมนวรรณ มณีจันทร์

|:- เราเชื่อมั่นว่าการเสียสละและการแบ่งปันจะทำให้โลกใบนี้สวยงามมากขึ้น ทุกๆ จุดเริ่มต้นของการเรียนรู้ นำไปสู่การเรียนรู้ถัดไป เว็บไซต์แห่งนี้ขอเป็นส่วนหนึ่งของการแบ่งปันความรู้ที่ไม่มีที่สิ้นสุด มาร่วมกันผลักดันโลกของเราให้หมุนไปพร้อมกับพลังแห่งความรักด้วยกันนะคะ :) >>> |:- About Me! -:|