สมัครเรียนโทร. 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 ดีๆ

การจัดการข้อมูลด้วยระบบฐานข้อมูล

            บทนี้จะเป็นการพูดถึงภาพรวมของระบบฐานข้อมูลซึ่งใช้สำหรับจัดเก็บข้อมูลอย่างมีประสิทธิภาพ

Software Process

            การบวนการทำซอฟท์แวร์มีด้วยการทั้งหมด 5 ส่วน

1.การเก็บข้อมูลตรวจสอบความต้องการ (Requirement)

            เป็นการเก็บและวิเคราะห์ข้อมูลสำหรับโปรแกรมที่กำลังจะทำ ซึ่งประกอบไปด้วย

-          Function

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

-          Non-function

เช่น ความสวยงาม ความเร็วของการทำงานเป็นต้น

2. การออกแบบ(Design)

            ออกแบบระบบฐานข้อมูล ออกแบบรูปลักษณ์และการออกแบบแนวทางของโปรแกรม

3.การเขียนจริงจากการออกแบบ(Implement)

            นำสิ่งที่ออกแบบมาเขียนเป็นโค๊ด

4.การทดสอบประเมินผล(Test and Evaluation)

            หลังจากเขียนเสร็จต้องมีการทดสอบอย่างถี่ถ้วนเพื่อไม่ให้เกิดหรือเกิดข้อผิดพลาดน้อยที่สุด

5.การใช้งานและการรักษา(Deployment and Maintenance)

            นำไปติดตั้งในเครื่องของลูกค้าและดูแลรักษาหากเกิดข้อผิดพลาด

ทำไมต้องเป็นฐานข้อมูล

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

            เพื่อแก้ปัญหาดังกล่าว ระบบฐานข้อมูลจึงเป็นระบบที่เก็บข้อมูลไว้ภายในแหล่งเดียวกัน โดยนำข้อมูลมาจัดระเบียบให้อยู่ร่วมกันแบบมีการจัดหมวดหมู่และมีความสัมพันธ์ ซึ่งหากมีคนต้องการใช้ข้อมูลก็สามารถเข้าถึงแหล่งกลางนี้ได้

            การจัดการฐานข้อมูลจะมีสิ่งที่เรียกว่า DBMS หรือ Database Management Systems ที่จะมาช่วยในการเป็นเครื่องมือสำหรับตอบโต้ระหว่างฐานข้อมูลกับผู้ใช้ และมีภาษา SQL(Structured Query Language) ที่ช่วยให้ผู้ใช้สามารถเพิ่มเติม เปลี่ยนแปลงหรือลบข้อมูลได้การติดต่อกับ DBMS จะทำโดยตรงหรือทำผ่านโปรแกรมที่เขียนขึ้นมาก็ได้(พวกโปรแกรมที่เขียนจาก JAVA VB เป็นต้น)


รูป1-1

เซอร์เวอร์ของฐานข้อมูล

            MySql Database Server

โปรแกรมทางด้านฐานข้อมูลใช้ในการจัดเก็บข้อมูลต่าง ๆ ตามที่ต้องการ เป็น Freeware สามารถเข้าไปดาวน์โหลดและนำมาใช้ฟรี ๆ โดยไม่ต้องเสียงเงินเพื่อซื้อลิขสิทธิ์ในการใช้งานโปรแกรมแต่อย่างใด MySQL เป็นที่นิยมใช้กันมากกับฐานข้อมูลบนอินเตอร์เน็ต

Oracle หรือ Object – Relational Database Management System (ORDBMS)

มีความสามารถทำงานได้ทั้งในรูปแบบ Rational และบางคุณสมบัติของ Object Oriented เป็นผลิตภัณฑ์จากบริษัทออราเคิล ออราเคิลเซิร์ฟเวอร์ มีความสามารถโดดเด่นในด้านการจัดการฐานข้อมูล มีความน่าเชื่อถือสูง ด้วยเทคโนโลยี Rollback Segment ซึ่งเป็นลิขสิทธิ์ของบริษัทออราเคิล โดยปกติ Log file หรือไฟล์ที่เก็บ Transaction ของระบบ

            ซึ่งทั้งสองแบบดังกล่าวเป็นการสร้างฐานข้อมูลแบบเชิงความสัมพันธ์

แบบจำลองข้อมูล

            ในส่วนนี้จะพูดถึงคำศัพท์พื้นฐานที่สำคัญต่อการสร้างแบบจำลองฐานข้อมูล

แบบจำลองฐานข้อมูล

มีทั้ง 5 แบบจำลองได้แก่

1.แบบจำลองฐานข้อมูลลำดับชั้น (Hierarchical Database Model)

      เป็นการสร้างฐานข้อมูลแบบ Top-Down คล้ายกับโครงสร้างของต้นไม้ในโครงสร้างข้อมูล

2.แบบจำลองฐานข้อมูลเชิงสัมพันธ์ (Relational Database Model) ***

      การสร้างฐานข้อมูลเป็นตาราง ได้รับความนิยมเพราะใช้ง่ายเวลาสร้างแล้วมาดูจะไม่งงเท่าแบบอื่นๆ

3.แบบจำลองฐานข้อมูลเครือข่าย (Network Database Model)

คล้ายกับ แบบจำลองฐานข้อมูลลำดับชั้น แต่ว่าแต่ละโหนดสามารถมีความสัมพันธ์กับโหนดอื่นและแต่ละโหนดก็สามารถมีหลายพ่อได้

4.แบบจำลองฐานข้อมูลเชิงวัตถุ (Object-Oriented Database Model)

      เป็นการออกแบบฐานข้อมูลโดยใช้แนวคิด OOP

5.แบบจำลองฐานข้อมูลแบบมัลติไดเมนชัน(Multidimensional Database Model)

      เป็นการเก็บข้อมูลด้วยตารางหลายมิติเหมาะกับงานคลังข้อมูล

 

-          Entities  คือสิ่งที่เกี่ยวข้องกับข้อมูลที่ต้องการจะเก็บ เช่น คน สิ่งของ สถานที่ เช่น  entities พนักงาน entities หนังสือ

-          Attributes คือคุณลักษณะของ entities กล่าวคือเมื่อพูดถึงโทรทัศน์ก็จะต้องมีคุณลักษณะคือมีขนาดหน้าจอ มีปุ่มกด สำหรับ entities พนักงานก็ต้องมีชื่อ นามสกุล ที่อยู่ อีเมล เป็นต้น

-          ความสัมพันธ์(relationships)  จะเป็นความสัมพันธ์ระหว่าง entities เช่นในร้านหนังสือต้องมี entitiesผู้ยืม และ entitiesหนังสือ ก็ต้องกำหนดความสัมพันธ์ว่า ผู้ยืมสามารถยืมได้ 1 เล่ม หรือหลายเล่มเป็นต้น โดยความสัมพันธ์จะมีอยู่ 3 ความสัมพันธ์ ได้แก่ความสัมพันธ์แบบหนึ่งต่อหนึ่ง(one-to-one) ความสัมพันธ์แบบหนึ่งต่อหลาย(one-to-many) ความสัมพันธ์แบบหลายต่อหลาย(many-to-many) เขียนย่อได้เป็น 1:1, 1:M, M:N

-          คีย์(Key) ในการสร้างฐานข้อมูลแบบสัมพันธ์ (Relational Database) จะมีการเก็บข้อมูลในรูปแบบตารางซึ่งประกอบไปด้วยแถวแนวตั้งและแถวแนวนอน จะมีการคีย์ลงไปด้วยเพื่อสร้างความแตกต่างของ attribute ที่มีคีย์และเพื่อกำหนดความสัมพันธ์ตามที่ต้องการ

-คีย์หลัก (Primary Key)

เป็นคีย์ที่ใช้ในการอ้างอิง โดยจะต้องไม่เก็บข้อมูลว่าง

-คีย์นอก (Foreign Key)

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

ข้อดี-ข้อเสียของฐานข้อมูล

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

 



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