ถ้าเราแทรกเพิ่ม data ในตาราง MySQL เราจะเอาข้อมูลเก่าใส่อย่างไร
ผม ไป ช่วยเขียนโปรแกรมให้ กับบริษัทของพรรคพวก โดยเก็บข้อมูล เป็น MySQL
แต่ พอต่อมา เขาจะเพิ่มหัวข้อโดยแทรก หลายหัวข้อระหว่าง หัวข้อต่าง ๆเท่าที่มี.
ความยุ่งยาก คือ เขามีข้อมูล ที่ป้อนอยู่แล้ว เป็น หลายร้อย data นั่นคือ ถ้า มานั่งป้อนใหม่ คง อ้วก... !!
นั่นคือ ถ้าผม ส่ง โปรแกรม ตัวที่ update แล้วไป บอก พนักงานเขาว่า คุณ ต้องป้อนใหม่ ทั้งหมดนะ
พนักงาน ก็จะไปบอกหัวหน้าๆ ก็ จะบอก พรรคพวกผม ===> ผล เสีย ชื่อ เลย เรา งานนี้
ช่วย ผมด้วยเถอะครับ !!
-------------------------------
ในรูป เป็น ตารางสมมุติ
สมมุติ ผม ต้องการเพิ่ม e-mail ระหว่าง name กับ telephone
แล้ว เรา จะ dump ข้อมูลเก่า เข้าไป อย่างไร ครับ ??
ถ้าเราแทรกเพิ่ม data ในตาราง MySQL เราจะเอาข้อมูลเก่าใส่...?
Moderator: mindphp
- roj2007
- PHP Jr. Member
- โพสต์: 11
- ลงทะเบียนเมื่อ: 01/01/1970 7:00 am
- mindphp
- ผู้ดูแลระบบ MindPHP
- โพสต์: 41417
- ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
- ติดต่อ:
แก้ไข โครงสร้าง ตารางได้ เลยครับ field ที่เราเพิ่ม เข้าไป ก็ จะเป็น ค่าว่างหรือ เป็น ค่า ที่เรากำหนด
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
- roj2007
- PHP Jr. Member
- โพสต์: 11
- ลงทะเบียนเมื่อ: 01/01/1970 7:00 am
มัน ไม่ง่าย อย่างนั้นนะสิครับผมว่า....
แก้ ไข โครงสร้าง ตารางนะ แก้ได้เลย ใช่ครับ
แต่ data เก่า ที่ เขา ป้อนอยู่แล้ว ที่ มี ตั้ง หลายร้อย data ( id)
นี่ล่ะครับ ? จะทำอย่างไร ?
มานั่ง แทรก ช่อง ว่าง ==> ..... , ' ' , ...
อย่างนี้ ทุก data ที่ เขาป้อนมาแล้ว ผม คง เสียเวลา นานแหง เลยครับ
จะทำอย่างไร ให้ dump เก่า ลงได้ โดยเว้น ช่วงว่าง ตรง ตารางที่เพิ่มใหม่( มีหลายอัน ซะด้วยสิ) ? นี่แหล่ะครับ คือปัญหา ที่ผมไม่ทราบครับ.
แก้ ไข โครงสร้าง ตารางนะ แก้ได้เลย ใช่ครับ
แต่ data เก่า ที่ เขา ป้อนอยู่แล้ว ที่ มี ตั้ง หลายร้อย data ( id)
นี่ล่ะครับ ? จะทำอย่างไร ?
มานั่ง แทรก ช่อง ว่าง ==> ..... , ' ' , ...
อย่างนี้ ทุก data ที่ เขาป้อนมาแล้ว ผม คง เสียเวลา นานแหง เลยครับ
จะทำอย่างไร ให้ dump เก่า ลงได้ โดยเว้น ช่วงว่าง ตรง ตารางที่เพิ่มใหม่( มีหลายอัน ซะด้วยสิ) ? นี่แหล่ะครับ คือปัญหา ที่ผมไม่ทราบครับ.
- mindphp
- ผู้ดูแลระบบ MindPHP
- โพสต์: 41417
- ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
- ติดต่อ:
ตอนนี้ที่คิดออก มี สอง ทางคือ
1.สร้างตารางใหม่ แล้ว ใช้ select insert into เอา ข้อมูล จากตารางเก่ามาใส่
2.แก้ไขโครงสร้าง ตารางตามต้อง การ แล้ว ใช้การ Update เข้ามาช่วย
แต่ถ้า ถนัด php ก็ ดึงค่า มาเก็บ ใน php แล้ว จับมันใส่ sql ใหม่ แต่ทำอย่างนี้ ต้องระวังพวกเครื่องหมายพิเศษ ด้วย
1.สร้างตารางใหม่ แล้ว ใช้ select insert into เอา ข้อมูล จากตารางเก่ามาใส่
2.แก้ไขโครงสร้าง ตารางตามต้อง การ แล้ว ใช้การ Update เข้ามาช่วย
แต่ถ้า ถนัด php ก็ ดึงค่า มาเก็บ ใน php แล้ว จับมันใส่ sql ใหม่ แต่ทำอย่างนี้ ต้องระวังพวกเครื่องหมายพิเศษ ด้วย
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
- Ballz
- PHP Sr. Member
- โพสต์: 78
- ลงทะเบียนเมื่อ: 01/01/1970 7:00 am
จากตัวอย่างที่ยกมานะครับ สมมติต้องการเพิ่มฟิลด์ email แทรกระหว่าง name กับ telephone
สมมติว่ามีข้อมูลเดิมอยู่ id: 1 - 100 (records)
1. ก็ต้องเพิ่มฟิลด์ email เข้ามาก่อน (ใส่ default เป็น empty string ก็ได้)
--> ตอนนี้จะได้ Table ที่มีข้อมูลเก่าครบ และมีฟิลด์เพิ่มเข้ามาอีก 1 ฟิลด์
2. ไล่ Update ข้อมูลลงไปในฟิลด์ใหม่นั้น
แน่นอนว่าคุณต้องวนไล่ update ข้อมูลทีละ record อยู่แล้วเพราะอยู่ดีๆ จะให้ข้อมูลมันกระโดดเข้าไปอยู่ด้วยตัวมันเองไม่ได้ อันนี้ผมไม่รู้ว่าข้อมูลหัวข้อที่ลูกค้าคุณต้องการเพิ่มเก็บอยู่ที่ไหน ในรูปแบบอะไร (ข้อมูลที่คุณว่าเค้าป้อนไว้แล้วน่ะ) แต่เราสามารถเขียนโปรแกรมไปดึงค่าแล้วนำมา update ได้ โดยผ่าน id เป็นตัวเชื่อม
งงมั้ยหว่า?
สมมติว่ามีข้อมูลเดิมอยู่ id: 1 - 100 (records)
1. ก็ต้องเพิ่มฟิลด์ email เข้ามาก่อน (ใส่ default เป็น empty string ก็ได้)
--> ตอนนี้จะได้ Table ที่มีข้อมูลเก่าครบ และมีฟิลด์เพิ่มเข้ามาอีก 1 ฟิลด์
2. ไล่ Update ข้อมูลลงไปในฟิลด์ใหม่นั้น
แน่นอนว่าคุณต้องวนไล่ update ข้อมูลทีละ record อยู่แล้วเพราะอยู่ดีๆ จะให้ข้อมูลมันกระโดดเข้าไปอยู่ด้วยตัวมันเองไม่ได้ อันนี้ผมไม่รู้ว่าข้อมูลหัวข้อที่ลูกค้าคุณต้องการเพิ่มเก็บอยู่ที่ไหน ในรูปแบบอะไร (ข้อมูลที่คุณว่าเค้าป้อนไว้แล้วน่ะ) แต่เราสามารถเขียนโปรแกรมไปดึงค่าแล้วนำมา update ได้ โดยผ่าน id เป็นตัวเชื่อม
งงมั้ยหว่า?
- Ballz
- PHP Sr. Member
- โพสต์: 78
- ลงทะเบียนเมื่อ: 01/01/1970 7:00 am
ผมยังงงๆ กับที่บอกว่าroj2007 เขียน:มัน ไม่ง่าย อย่างนั้นนะสิครับผมว่า....
แก้ ไข โครงสร้าง ตารางนะ แก้ได้เลย ใช่ครับ
แต่ data เก่า ที่ เขา ป้อนอยู่แล้ว ที่ มี ตั้ง หลายร้อย data ( id)
นี่ล่ะครับ ? จะทำอย่างไร ?
มานั่ง แทรก ช่อง ว่าง ==> ..... , ' ' , ...
อย่างนี้ ทุก data ที่ เขาป้อนมาแล้ว ผม คง เสียเวลา นานแหง เลยครับ
จะทำอย่างไร ให้ dump เก่า ลงได้ โดยเว้น ช่วงว่าง ตรง ตารางที่เพิ่มใหม่( มีหลายอัน ซะด้วยสิ) ? นี่แหล่ะครับ คือปัญหา ที่ผมไม่ทราบครับ.
"แต่ data เก่า ที่ เขา ป้อนอยู่แล้ว ที่ มี ตั้ง หลายร้อย data ( id)
นี่ล่ะครับ ? จะทำอย่างไร ?
มานั่ง แทรก ช่อง ว่าง ==> ..... , ' ' , ...
อย่างนี้ ทุก data ที่ เขาป้อนมาแล้ว ผม คง เสียเวลา นานแหง เลยครับ
จะทำอย่างไร ให้ dump เก่า ลงได้ โดยเว้น ช่วงว่าง ตรง ตารางที่เพิ่มใหม่( มีหลายอัน ซะด้วยสิ) ?"
หมายถึงอะไรน่ะครับ
- roj2007
- PHP Jr. Member
- โพสต์: 11
- ลงทะเบียนเมื่อ: 01/01/1970 7:00 am
ผม ไปธุระ ตจว. ซะหลายวัน
ก่อนอื่น ต้องขอขอบ คุณ ท่าน mindphp และท่าน Ballz
ผม พอจะนึกออกแล้ว คงต้อง "แก้ไขโครงสร้าง ตารางตามต้อง การ แล้ว ใช้การ Update เข้ามาช่วย " ( แต่ยังไม่ได้ลองทำเลย ...ถ้าทำแล้วติด แล้ว จามาถามใหม่ครับ)
ตามทีว่า นั้น แหล่ะ แต่ ยุ่งยากหน่อย เพราะ เพราะ มี ค่า ต่างๆ ร่วม 30 ค่า ต้องแทรก ราวๆ 6-7 ค่า
และ ต่อคำถามที่ ว่า "จะทำอย่างไร ให้ dump เก่า ลงได้ โดยเว้น ช่วงว่าง ตรง ตารางที่เพิ่มใหม่( มีหลายอัน ซะด้วยสิ) ?"
ผมหมายถึง
$sql="insert into tb_member (' ', '$name',' ', '$telephone', '$address','$remark') ;
หมายถึง ช่วง ระหว่าง name กะ telephone.
แล้ว ต้อง มา แก้ที่ data นะ
คือ ผมก็ ถามไปแบบ งงๆ ครับ เลย ทำให้ คนตอบ งง ไปด้วย. ( ตอนนี้ก็ ยังไม่หาย งง เท่าไหร่ แต่ เดี่ยวค่อยทำดูก่อนครับ)
และ ท่าน Ballz ครับ ผม เข้าใจ ครับ ที่ท่านแนะนำมา ไม่ งง ครับ !
ขอบพระคุณครับ
โรจน์
ก่อนอื่น ต้องขอขอบ คุณ ท่าน mindphp และท่าน Ballz
ผม พอจะนึกออกแล้ว คงต้อง "แก้ไขโครงสร้าง ตารางตามต้อง การ แล้ว ใช้การ Update เข้ามาช่วย " ( แต่ยังไม่ได้ลองทำเลย ...ถ้าทำแล้วติด แล้ว จามาถามใหม่ครับ)
ตามทีว่า นั้น แหล่ะ แต่ ยุ่งยากหน่อย เพราะ เพราะ มี ค่า ต่างๆ ร่วม 30 ค่า ต้องแทรก ราวๆ 6-7 ค่า
และ ต่อคำถามที่ ว่า "จะทำอย่างไร ให้ dump เก่า ลงได้ โดยเว้น ช่วงว่าง ตรง ตารางที่เพิ่มใหม่( มีหลายอัน ซะด้วยสิ) ?"
ผมหมายถึง
$sql="insert into tb_member (' ', '$name',' ', '$telephone', '$address','$remark') ;
หมายถึง ช่วง ระหว่าง name กะ telephone.
แล้ว ต้อง มา แก้ที่ data นะ
คือ ผมก็ ถามไปแบบ งงๆ ครับ เลย ทำให้ คนตอบ งง ไปด้วย. ( ตอนนี้ก็ ยังไม่หาย งง เท่าไหร่ แต่ เดี่ยวค่อยทำดูก่อนครับ)
และ ท่าน Ballz ครับ ผม เข้าใจ ครับ ที่ท่านแนะนำมา ไม่ งง ครับ !
ขอบพระคุณครับ
โรจน์
-
- Similar Topics
- ตอบกลับ
- แสดง
- โพสต์ล่าสุด
-
-
โพสต์ใหม่ วิธีแก้ปัญหา error mysql[4] Incorrect data value
โดย offing » 30/08/2014 4:00 pm » ใน SQL - Database - 1 ตอบกลับ
- 2908 แสดง
-
โพสต์ล่าสุด โดย mindphp
30/08/2014 5:32 pm
-
-
- 0 ตอบกลับ
- 4494 แสดง
-
โพสต์ล่าสุด โดย theoneozz
10/01/2019 2:03 pm
-
-
โพสต์ใหม่ export data จาก data grid view ข้อมูลแสน row c# winform
โดย bbibbi » 29/05/2023 5:29 pm » ใน Programming - C/C++ & java & Python - 0 ตอบกลับ
- 3835 แสดง
-
โพสต์ล่าสุด โดย bbibbi
29/05/2023 5:29 pm
-
-
-
โพสต์ใหม่ อัพเกรด Mysql Ubuntu จาก MySQL 5.5 เป็น MySQL 5.7
โดย mindphp » 12/06/2016 5:57 pm » ใน Linux - Web Server - 1 ตอบกลับ
- 3360 แสดง
-
โพสต์ล่าสุด โดย mindphp
12/06/2016 5:58 pm
-
ผู้ใช้งานขณะนี้
สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 71