วิธีการเขียน SQL เพื่ม PRIMARY KEY ตาราง ฐานข้อมูล

Post a reply

Smilies
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: วิธีการเขียน SQL เพื่ม PRIMARY KEY ตาราง ฐานข้อมูล

วิธีการเขียน SQL เพื่ม PRIMARY KEY ตาราง ฐานข้อมูล

by Ittichai_chupol » 10/01/2020 6:20 pm

ในการที่จะเก็บข้อมูลต่างๆนั้น เพื่อจะนำมาใช้งานนั้น จำเป็นต้องมีการสร้างฐานข้อมูลขึ้นมา เพื่อเก็บข้อมูลเหล่านั้นเพื่อง่ายต่อการนำมาใช้งานในขั้นตอนต่อไป ซึ่งทั้งนี้ในการสร้างฐายนข้อมูลที่ดีนั้นควรจะออกเเบฐานให้มีความสัมพันธ์ที่ดี และจะมีการเก็บข้อมูลที่ครบถ้วน ซึ่งทั้งนี้ ในบางครั่งก็อา่จจะสร้างขึ้นมาสมบูรณ์แบบแล้ว แต่อาจจะมีกรณีที่จะต้องมีการปรับบาง คอลัมน์` เพื่อให้มาเป็น PRIMARY KEY ของตารางโดยเพิ่มขึ้นจากของเดิมที่ เพื่อที่จะใช้สำหรับจัดการการเชื่อมโยงของข้อมูลได้อย่างถูกต้องมากขึ้น ซึ่งนอกจากจะเข้าไปปรับแก้ไข โปรแกรมฐานข้อมูลได้ เลย หรือ อาจจะใช้ภาษา SQL เข้ามาช่วยเขียน โดยจะเขียนจากเขียนผ่านไฟล์ php ดังนี้

Code: Select all

ALTER TABLE `ชื่อตาราง ` DROP PRIMARY KEY, ADD PRIMARY KEY( PRIMARY KEY เดิม , PRIMARY KEY  ใหม่, PRIMARY KEY  ใหม่, PRIMARY KEY  ใหม่)
จากตัวอย่างอย่าง
1.ในตารางที่ชื่อว่า phpbb_posts จะมี PRIMARY KEY เพียงตัวเดียว
Selection_999(2383).png
Selection_999(2383).png (52.72 KiB) Viewed 563 times
2.ต้องการที่จะปรับ `topic_id`, `forum_id`, `poster_id` มาเป็น PRIMARY KEY เพิ่มเติม
3.โดยใช้คำสั่ง SQL ดังนี้

ALTER TABLE `phpbb_posts` DROP PRIMARY KEY, ADD PRIMARY KEY( `post_id`, `topic_id`, `forum_id`, `poster_id`)
Selection_999(2382).png
Selection_999(2382).png (20.75 KiB) Viewed 563 times

4.ผลลัพธ์ที่ได้
Selection_999(2381).png
Selection_999(2381).png (73 KiB) Viewed 563 times
บทความเพิ่มเติม

วิธีการเขียน SQL สำหรับเปลี่ยน Collation เพื่อปรับเปลี่ยนการรองรับภาษา ใน ตารางฐานข้อมูล
วิธีการเขียน SQL เพื่ม เพิ่มคอลัมน์ ฐานข้อมูล
วิธีการเขียน SQL ลบคอลัมน์ออกจากตารางใน ฐานข้อมูล

Top