สมัครเรียนโทร. 085-350-7540 , 084-88-00-255 , ntprintf@gmail.com

ฟรี TUTORIAL JAVA

ฟรีtutorial JAVA 01 install Eclipse ฟรีtutorial JAVA 02 intro to programming Eclipse ฟรีtutorial JAVA 03 condiotion ฟรีtutorial JAVA 04.loop ฟรีtutorial JAVA 05.array ฟรีtutorial JAVA 05 2 array cont ฟรีtutorial JAVA 06 01 function ฟรีtutorial JAVA 06 02 function cont ฟรีtutorial JAVA 07 object ฟรีtutorial JAVA 08 string ฟรีtutorial JAVA 09 constructor ฟรีtutorial JAVA 10 01 oop ฟรีtutorial JAVA 10 02 oop2 ฟรีtutorial JAVA 11 exception ฟรีtutorial JAVA 12 reading file ฟรีtutorial JAVA 13 thread ฟรีtutorial JAVA 14 generic ฟรีtutorial JAVA 15 01 GUI ฟรีtutorial JAVA 15 02 GUI2 ฟรีtutorial JAVA 15 03.GUI3 ฟรีtutorial JAVA 16 using WindowBuilder ฟรีtutorial JAVA 17 event ฟรีtutorial JAVA 18 database management system ฟรีtutorial JAVA 19 ER diagram ฟรีtutorial JAVA 20 Relational ฟรีtutorial JAVA 21 Xampp ฟรีtutorial JAVA 22 JDBC ฟรีtutorial JAVA 23 MVC ฟรีtutorial JAVA 24 SQL ฟรีtutorial JAVA
ขอย้ำอีกครั้งว่าเนื้อหาที่เห็นอยู่นี้ไม่ใช่เนื้อหาตามปกติที่เราสอนในห้องเรียนเป็นแค่ tutorial ไว้อ่านประกอบเฉยๆ แทบไม่เกี่ยวกันเลย และไม่เกี่ยวกับการบ้านที่ทำครับ ในห้องเรียนเนื้อหาจะเยอะกว่านี้ค่อนข้างมากครับ
ขอบคุณน้องตี้ อย่างสูงสำหรับ Tutorial ดีๆ

ฟรี TUTORIAL DATA STRUCTURE

DATA STRUCTURE

ฟรีtutorial : DATA STRUCTURE : 01 1การเรียงลำดับ(Sorting) ฟรีtutorial : DATA STRUCTURE : 01 2 การเรียงลำดับ2 ฟรีtutorial : DATA STRUCTURE : 02 อาร์เรย์ลิสต์ (Array List) ฟรีtutorial : DATA STRUCTURE : 03 ลิงค์ลิสต์ (Linked List) ฟรีtutorial : DATA STRUCTURE : 04 สแต๊ค ฟรีtutorial : DATA STRUCTURE : 05 1 คิวและไพออริตี้คิว ฟรีtutorial : DATA STRUCTURE : 05 2 คิวและไพออริตี้คิว ฟรีtutorial : DATA STRUCTURE : 06 1 ไบนารีทรี ฟรีtutorial : DATA STRUCTURE : 06 2 ไบนารีเสิร์ชทรี ฟรีtutorial : DATA STRUCTURE : 06 3 ไบนารีเสิร์ชทรี ฟรีtutorial : DATA STRUCTURE : 08 แฮช ฟรีtutorial : DATA STRUCTURE : 09 กราฟ ฟรีtutorial : DATA STRUCTURE :
ขอย้ำอีกครั้งว่าเนื้อหาที่เห็นอยู่นี้ไม่ใช่เนื้อหาตามปกติที่เราสอนในห้องเรียนเป็นแค่ tutorial ไว้อ่านประกอบเฉยๆ แทบไม่เกี่ยวกันเลย และไม่เกี่ยวกับการบ้านที่ทำครับ ในห้องเรียนเนื้อหาจะเยอะกว่านี้ค่อนข้างมากครับ
ขอบคุณน้องตี้ อย่างสูงสำหรับ Tutorial ดีๆ

แผนภาพ E-R (Entity-Relationship Diagram)

            การเขียนแผนภาพ E-R อยู่ในขั้นตอนของการออกแบบฐานข้อมูล เป็นการจัดข้อมูลต่างๆให้มีระเบียบและมีความสัมพันธ์กัน การเขียนแผนภาพE-R ก็คือการวางแผนให้เห็นภาพโดยรวมเพื่อทำให้การสร้างฐานข้อมูลง่ายและลดข้อผิดพลาด โดยในการเขียนแผนภาพ E-R จะเป็นการแสดงให้เห็นว่า entities และ attributes ใดบ้างรวมถึงสิ่งเหล่านั้นมีความสัมพันธ์กันแบบใด

การเขียนแผนภาพ

            Entity

            คือสิ่งที่เราสนใจ เช่น พนักงาน หนังสือ หรืออาจะเป็นสถานที่ โดยจะเห็นได้ว่า entity นั้นเป็นคำนามที่มีคุณลักษณะได้ ดังนั้นการตั้งชื่อให้กับ entity จะตั้งชื่อด้วยคำนามและเป็นตัวอักษรตัวใหญ่ เช่น STUDENT, EMPLOYEE, STORE, REGISTRATION, HIRING

            Entity จะเขียนอยู่ในรูปกรอบสี่เหลี่ยม                              นอกจากนี้ entity ยังมีอีก 2 แบบ ได้แก่

            1.Strong Entity เป็น entity หลัก ที่สามารถเขียนได้เลย

            2.Weak Entity เป็น entity ที่ไม่ได้เกิดขึ้นเองแต่ต้องอยู่กับ entity หลัก ถ้า entity หลักถูกลบ weak entity จะถูกลบไปด้วย เขียนแทนด้วย

 


รูป 2-1

            เมื่อมีนักเรียนเราก็อาจจะต้องเก็บข้อมูลของผู้ปกครองด้วย ในกรณีที่มีเหตุฉุกเฉินจะได้สามารถติดต่อผู้ปกครองของเด็กได้ ดังนั้น STUDENT_PARENTS จึงเป็น weak entity เพราะเมื่อนักเรียนหายไปก็จะไม่มีการเก็ยข้อมูลของผู้ปกครอง

            Attribute

            คุณลักษณะของ entity  เช่นนักเรียนก็ต้องมี ชื่อ รหัสนักเรียน ที่อยู่ เบอร์โทร โดยจะใช้สัญลักษณ์วงรี โดยที่ primary key จะถูกขีดเส้นใต้ การตั้งชื่อจะตั้งด้วยตัวเล็กแต่ถ้ามีมากกว่าหนึ่งคำให้ใช้ตัวใหญ่สลับ

            หากต้องการจะสร้าง entity ของนักเรียน ก็จะประกอบไปด้วย รหัส ชื่อ และที่อยู่ จะได้รูปดังข้างล่าง

 


รูป2-2

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

 


รูป2-3

            Attribute เช่น stuName เรียกว่า simple attribute ส่วน stuAdress เรียกว่า Composite attribute คือประกอบไปด้วย attribute ย่อยๆอีก

            แต่อย่างไรก็ตามยังมี attribute บางอันที่สามารถเก็บข้อมูลได้มากกว่า 1 ค่า เรียกว่า multivalued Attribute เช่น เบอร์โทรของนักเรียนอาจมีได้มากกว่าหนึ่งเบอร์โทร วิธีแก้ปัญหาก็คือการแตกออกเป็น attribute ย่อยๆ เช่น phone_1, phone_2, phone_3 แต่จะเห็นได้ว่าวิธีนี้อาจจะยังไม่มีประสิทธิภาพเพราะการสร้าง attribute ไว้มากๆเพื่อรองรับการใส่ข้อมูลนั้น อาจเป็นการสร้างทิ้งไว้เปล่าๆ ดังนั้นควรแก้สร้าง entity ขึ้นมาให้และให้มีความสัมพันธ์เชื่อมกับ entity ของนักเรียน

 


รูป2-4

            ความสัมพันธ์(Relationship)

            ความสัมพันธ์เป็นสิ่งที่ใช้เชื่อม entity ใช้บอกว่าแต่ละ entity มีความสัมพันธ์กันแบบใด โดยจะใช้สัญลักษณ์คล้ายๆบนไพ่ข้าวหลามตัด และในปลายของแต่ละข้างให้ระบุความสัมพันธ์ของ entity ลงไป ดูจากรูป 2-4 คือมีความสัมพันธ์แบบ หนึ่งต่อหลาย นักเรียนหนึ่งคนมีได้หลายเบอร์โทร

            ความสัมพันธ์แบบที่เป็นปัญหาก็ได้แก่ความสัมพันธ์แบบหลายต่อหลาย(M:N) เพราะเป็นรูปแบบของความสัมพันธ์ที่ทำให้คนดูงงไปด้วย เช่น ร้านยา – ยาหลายชนิดมีลูกค้ามาซื้อได้หลายคน ในขณะที่ ลูกค้าหลายคนก็ซื้อยาได้หลายชนิด ปัญหาแบบนี้คือควรแยกการกระทำของความสัมพันธ์ออกมาเป็นอีก entity หนึ่ง เช่นในที่นี้มี 2 entity ได้แก่ยากับลูกค้ามีการกระทำระหว่างกันคือการซื้อ ก็แยกการซื้อออกมาเป็นอีก 1 entity

 


รูป2-5

 


รูป2-6

Super-type และ sub-type

            จะคล้ายกับ inheritance คลาสแม่คลาสลูก คือมี entity ที่มี attribute ที่ entity อื่นก็จะมี attribute แบบเดียวกัน เช่น entity ของ พนักงานในบริษัท ประกอบด้วย attribute คือ id, name, address, phone แต่บริษัทมีพนักงานหลายๆส่วนที่ทำงานเฉพาะด้านต่างกัน เช่นพนักงานที่เป็นวิศวกร พนักงานฝ่ายขาย พนักงานบัญชี พิสูจน์อักษร หรืออาจมีพนักงาน part time พนักงานทั้งหลายเหล่านี้ก็ต้องมีการเก็บข้อมูลที่เหมือนกับ entity ของ พนักงานในบริษัทคือเก็บ id, name, address, phone แต่ก็ต้องมี attribute เพิ่มเติมเช่น วิศวกร อาจต้องมี attribute คือ ด้านเฉพาะ เงินเดือน ส่วนพนักงานฝ่ายขาย ก็มี attribute ที่เป็นโบนัสจากการขาย และพนักงานพิสูจน์อักษร  ก็มี attribute เช่น ภาษาที่ตรวจได้ ตรวจงานได้วันละกี่หน้า เป็นต้น ในที่นี้ entity ของ พนักงานในบริษัท ถือเป็น super-type ส่วน พนักงานต่างๆเป็น sub-type การเขียน super-type sub-type ใช้แทนด้วยเครื่องหมายยูเนียน (U)

 


รูป2-7

 



แผนผังการเรียนเขียนโปรแกรม