ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์Programmingสอบถาม php ขอคำแนะนำการสร้าง database เก็บข้อมูล
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: สอบถาม php ขอคำแนะนำการสร้าง database เก็บข้อมูล  (อ่าน 1325 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
JumDaiDee
สมุนแก๊งเสียว
*

พลังน้ำใจ: 18
ออฟไลน์ ออฟไลน์

กระทู้: 566



ดูรายละเอียด
« เมื่อ: 26 พฤษภาคม 2014, 23:12:56 »

สวัสดีครับ พี่ๆ โปรแกรมเมอร์

พอดีผมกำลังจะทำระบบจัดเก็บสินค้าใน สโตร์ ครับ

แต่ข้อมูลคุณสมบัติมันแตกต่างกัน แต่ผมอยากเก็บให้มันละเอียด
เพราะมันจะง่ายต่อการค้นหา หรือเพื่อดูรายงาน

มีข้อมูลอยู่ว่า ผมซื้อกระดาษมา ผมต้องการเก็บ
ยี่ห้อ, ชนิดกระดาษ, แกรม, ขนาด, สี

ส่วนข้อมูลอีกอัน ผมซืิอพัดลมมา ผมต้องการเก็บ
ยี่ห้อ, สี, ขนาดใบพัด

ส่วนข้อมูลอีกอัน ผมซืิอแตงโมมา ผมต้องการเก็บ
สีผลไม้, สุกไม่สุก, หวานไม่หวาน

ปัญหาที่ผมคิดไม่ออกว่าจะสร้าง db เพื่อเก็บอย่างไร เพราะคุณสมบัติมันไม่เท่ากัน และฟิวที่บันทึกไม่เท่ากัน
เวลาผมค้นหา ผมก็จะ เลือกยี่ห้อกระดาษ เลือกชนิดกระดาษ แล้วมันก็จะรายงานส่วนของกระดาษที่ผมฟิวเตอร์ไว้

*** แต่ผมไม่พูดถึงการค้นหานะครับ เพราะพอทำได้อยู่ แต่อยากรู้แค่ว่า พี่ที่เทพๆ ถ้าเจอเคสอย่างนี้ จะสร้าง db เก็บกันยังไง ผมจะขอนำไปใช้พัฒนาบ้างครับ ***
 wanwan017 wanwan017
บันทึกการเข้า

สินค้าออนไลน์ https://www.shoppook.com/product | โปรแกรมออนไลน์ : https://appnon.com
adjobb
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 320
ออฟไลน์ ออฟไลน์

กระทู้: 2,872



ดูรายละเอียด
« ตอบ #1 เมื่อ: 26 พฤษภาคม 2014, 23:15:12 »

php พื้นฐานเลยครับ ดูจบทำเป็นแน่นอน ผมเองก็ดูจากที่นี้จนเป็น

http://www.thaicreate.com/comm...ity/php-vdo-clip-tutorial.html
บันทึกการเข้า
scanfire
ก๊วนเสียว
*

พลังน้ำใจ: 23
ออฟไลน์ ออฟไลน์

กระทู้: 245



ดูรายละเอียด เว็บไซต์
« ตอบ #2 เมื่อ: 26 พฤษภาคม 2014, 23:17:46 »

มีพื้นฐาน dba ไหมครับผม ถ้าไม่มีตาม lab บนเลยครับ thaicreate ครับ
บันทึกการเข้า

ทำเว็บไซต์ Magento, รับทำเว็บไซน์ขายของ ,รับตัดเว็บไซต์ responsive  ,รับทำแอพมือถือ ,สอนเขียนโปรแกรม, บริษัทรับทำเว็บไซต์
โทร : 0970011614, 063-187-5099
email : [email protected]
xvlnw.com
Verified Seller
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 493
ออฟไลน์ ออฟไลน์

กระทู้: 5,905



ดูรายละเอียด เว็บไซต์
« ตอบ #3 เมื่อ: 26 พฤษภาคม 2014, 23:23:43 »

แนวๆนี้ถ้าเป็นผม ก็คงแยก Table เก็บแต่ละอย่างไปเลยครับ เพราะว่ามองจากแต่ละอุปกรณ์มันมีความแตกต่างกันในเรื่องของการเก็บข้อมูลครับ
บันทึกการเข้า

JumDaiDee
สมุนแก๊งเสียว
*

พลังน้ำใจ: 18
ออฟไลน์ ออฟไลน์

กระทู้: 566



ดูรายละเอียด
« ตอบ #4 เมื่อ: 26 พฤษภาคม 2014, 23:33:54 »

แนวๆนี้ถ้าเป็นผม ก็คงแยก Table เก็บแต่ละอย่างไปเลยครับ เพราะว่ามองจากแต่ละอุปกรณ์มันมีความแตกต่างกันในเรื่องของการเก็บข้อมูลครับ

พี่ xvlnw.com เข้าใจคำถามผมตลอดเลยครับ ขอบคุณครับ

ถ้าเราแยก table มันยากต่อการค้นหาไหมครับ หรือเรา join กันเอาครับ
คือผมอยากทำให้ ระบบมันอยู่หน้าเดียวกันทั้งหมด ถ้าเก็บใน table เดียวกันเวลาทำรายงานมันก็จะง่าย

แต่ก็อย่างที่พี่ว่า แต่ละอุปกรณ์มันมีความแตกต่างกัน มันก็ยากที่จะเก็บใน table เดียวกัน
นอกจะจากว่า ฟิวในไม่ใช่ค่าของมัน ก็ปล่อยให้มัน insert ค่าว่างไป จริงๆจะทำฟิว แต่อันลง table เดียวเลยครับ

แต่ผมมาขอถามก่อน เผื่อได้ไอเดียหลายๆอย่างครับ
บันทึกการเข้า

สินค้าออนไลน์ https://www.shoppook.com/product | โปรแกรมออนไลน์ : https://appnon.com
feee
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 266
ออฟไลน์ ออฟไลน์

กระทู้: 1,933



ดูรายละเอียด
« ตอบ #5 เมื่อ: 27 พฤษภาคม 2014, 00:46:52 »

ผมว่าน่าจะเก็บแยกเป็น table ดีกว่าครับ
บันทึกการเข้า

kobkung
Verified Seller
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 103
ออฟไลน์ ออฟไลน์

กระทู้: 1,308



ดูรายละเอียด เว็บไซต์
« ตอบ #6 เมื่อ: 27 พฤษภาคม 2014, 00:59:55 »

ปกติแยก table เพื่อเอาไปทำอย่างอื่นต่อด้วย เผื่อทำหลายภาษา ประกอบร่างหลายส่วน ต่อยอดจะได้ไม่ติดปัญหา

table product เก็บ
product id สินค้า
productname ชื่อสินค้า

table groupcate
groupcateid 
groupcatename เช่น ยี่ห้อ สี

table groupitem
groupitemid
groupcateid  เป็น id relate table groupcate
groupitemname เช่น สีแดง , สีขาว , ซัมซุง , พานา

table matchproduct
productid
groupcateid
groupitemid

แล้วก็ join เอา
บันทึกการเข้า

เราเป็นบริษัท รับทำเว็บไซต์ แก้เว็บเดิม เขียน Php+Mysql+jQuery+css+bootstrap  งานตามสั่ง ประสบการณ์ จะ 19 ปี ละจ้า
Smilephp.com รับทำเว็บไซต์บริษัท e-commerce + ระบบชำระเงิน paypal,ธนาคาร  เว็บบริษัท เว็บขายของ ระบบจอง เช่า เขียน PHP ได้ทุกแนว  ช่วงนี้เน้นรับงาน ERP ระบบเอกสารบริษัท ,บัญชี ,  Barcode, Stock , Warehouse , Logistic ติดต่อ 086-364-5262

งดตอบคนทำเว็บนอกลู่นอกทาง ไม่ทำเว็บ WP ปั่นแชร์ เว็บประมูล สคริปปั่นใดๆ ไม่ทำเว็บบอลและพ
nagis
ก๊วนเสียว
*

พลังน้ำใจ: 26
ออฟไลน์ ออฟไลน์

กระทู้: 355



ดูรายละเอียด
« ตอบ #7 เมื่อ: 27 พฤษภาคม 2014, 02:21:53 »

ลองดูพวก NoSql ดู
บันทึกการเข้า
tinnakorn
ก๊วนเสียว
*

พลังน้ำใจ: 22
ออฟไลน์ ออฟไลน์

กระทู้: 302



ดูรายละเอียด เว็บไซต์
« ตอบ #8 เมื่อ: 27 พฤษภาคม 2014, 06:17:04 »

อ้างถึง
มีข้อมูลอยู่ว่า ผมซื้อกระดาษมา ผมต้องการเก็บ
ยี่ห้อ, ชนิดกระดาษ, แกรม, ขนาด, สี

ส่วนข้อมูลอีกอัน ผมซืิอพัดลมมา ผมต้องการเก็บ
ยี่ห้อ, สี, ขนาดใบพัด

ส่วนข้อมูลอีกอัน ผมซืิอแตงโมมา ผมต้องการเก็บ
สีผลไม้, สุกไม่สุก, หวานไม่หวาน

สวัสดีครับ ขออนุญาตตอบตามประสบการณ์ที่มี
มันอยู่ที่การ Normalization : (http://www.slideshare.net/skiats/normalization-10683732 )
และการนำข้อมูลไปใช้ประโยชน์ของท่านมากกว่าครับ

เช่นบางคนอาจเก็บข้อมูลแยกออกเป็นตารางอาจจะเพื่อการจัดการง่ายหรือการใช้ประโยชน์ของ table ให้มากที่สุด
แต่ต้องแลกกับการ query เพื่อ join กันทีหลัง

บางคนบอกว่า ก็ข้อมูลไม่ได้มากและซับซ้อนอะไรก็จับมันยัดที่ในตารางเดียวนี่แหละ
มีข้อดีอยู่ว่า query ง่ายสุดๆ แถมเวลา Export ข้อมูลออกไปแล้วสามาถใช้ได้เลย(ไม่ว่าจะเป็น pivot table, ODBC)
แต่ต้องแรกกับการใช้ประโยนช์ของ table ไม่ได้เต็มที่เช่นอาจจะมี ฟิล์ดว่าง เช่น record ที่เก็บผลไม้ ในคอลัมน์ "ยี่ห้อ" ที่เก็บข้อมูลพัดลมอาจจะไม่ได้ใช้

จากตัวอย่างจะเห็นได้ว่าวิธีไหนก็ได้ทั้งนั้นครับ ขึ้นอยู่กับ programmer และผมก็เคารพในความคิดเห็นของแต่ละบุคคล
แต่ตามที่ผมเคยเจอมาถ้าเป็นฐานข้อมูลที่มีการใช้น้อยๆและเรียกใช้งาน (query) ไม่บ่อยนักผมจะเลือกแบบแรกด้วยเหตุผลข้างบน

ส่วนแบบที่สองผมจะเอาไว้เก็บข้อมูลที่ user อาจจะมีการเรียกใช้บ่อยๆเช่นข้อมูลประเภทรายงาน สามารถให้ผู้ใช้ Export ฐานข้อมูลและใช้งานต่อบน Excel ได้เลย ง่ายดีไม่ต้อง Program เพิ่มครับ  :'( :'(
บันทึกการเข้า

rokaisakkon
ก๊วนเสียว
*

พลังน้ำใจ: 38
ออฟไลน์ ออฟไลน์

กระทู้: 458



ดูรายละเอียด
« ตอบ #9 เมื่อ: 27 พฤษภาคม 2014, 09:16:32 »

ปกติแยก table เพื่อเอาไปทำอย่างอื่นต่อด้วย เผื่อทำหลายภาษา ประกอบร่างหลายส่วน ต่อยอดจะได้ไม่ติดปัญหา

table product เก็บ
product id สินค้า
productname ชื่อสินค้า

table groupcate
groupcateid 
groupcatename เช่น ยี่ห้อ สี

table groupitem
groupitemid
groupcateid  เป็น id relate table groupcate
groupitemname เช่น สีแดง , สีขาว , ซัมซุง , พานา

table matchproduct
productid
groupcateid
groupitemid

แล้วก็ join เอา


เป็นผม ผมก็ทำแบบท่านนี้นะ  แยกตารางครับ แต่ไม่ได้แยกว่า ตารางนี้ของ  กระดาษ ตารางนี้ของพัดลม
บันทึกการเข้า

#วงการฟรีแลนซ์มันโหดน่ะครับ
JumDaiDee
สมุนแก๊งเสียว
*

พลังน้ำใจ: 18
ออฟไลน์ ออฟไลน์

กระทู้: 566



ดูรายละเอียด
« ตอบ #10 เมื่อ: 27 พฤษภาคม 2014, 13:22:36 »

โอเคครับ ผมได้ไอเดียแล้วครับผม
ถามใน ไทยเสียว ได้ความรู้ทุกครั้งเลยครับ
ขอบคุณบอร์ดนี้มากๆ เลยครับ

ขอบคุณพี่ๆ มากที่ให้คำแนะนำ +1
ให้ทุกคนแล้วครับ
บันทึกการเข้า

สินค้าออนไลน์ https://www.shoppook.com/product | โปรแกรมออนไลน์ : https://appnon.com
หน้า: [1]   ขึ้นบน
พิมพ์