วันอังคารที่ 25 พฤศจิกายน พ.ศ. 2557

ตัวอย่างภาษา PHP


     ภาษาพีเอชพี จะเป็นส่วนประกอบภายในเว็บเพจ โดยคำสั่งจะปรากฏระหว่าง <?php ...  ?> เช่น

<?php
    echo "Hello, World!";
?>

<?php
    echo "Hello World."; 
?>

<script language="php">
    echo "Hello World.";
</script>

     โครงสร้าง ควบคุมของ PHP จะมีความคล้ายคลึงกับ C/C++ มาก เช่น if , for , switch และมีบางส่วนที่คล้าย Perl สามารถกำหนดตัวแปรโดยไม่ต้อง กำหนดชนิดของตัวแปรว่าจะเป็น int, float, boolean เป็นต้น

<?php
    for ($i = 0; $i < 10; $i++){
       echo "Test".$i; 
    }
?>

       ตัวอย่างการเขียน php แบบ oop

<?php
    class MyClass
    {
        private $var = 'Hello World!';
        public function getHello()
        {
            return $this->var;
        }
    }
    $obj = new MyClass();
    echo $obj->getHello();
?>


ข้อดีของ PHP


      1. เป็นของฟรี ว่ากันว่าสุดยอดของ Web Server ในฝันของผู้ใช้ที่รู้จักคุณค่าของเงินก็คือ ระบบปฏิบัติการ Linux, โปรแกรมเว็บ Apache, โปรแกรมฐานข้อมูล MySQL, และ Server Site Script อย่าง PHP เพราะทุกอย่างฟรีหมด

      2. มีความเร็ว อะไรที่เกิดมาทีหลังย่อมได้เปรียบ คำพูดนี้ดูเหมือนจะเป็นจริงเสมอ เพราะ PHP นำเอาข้อดีของทั้ง C, Perl และ Java มาผนวกเข้าด้วยกัน ทำให้ทำงานได้รวดเร็วกว่า CGI หรือแม้แต่ ASP และมีประสิทธิภาพ โดยเฉพาะเมื่อใช้กับ Apache Server เพราะไม่ต้องใช้โปรแกรมจากภายนอก

      3. Open Source การพัฒนาของโปรแกรมไม่ได้ยึดติดกับบุคคลหรือกลุ่มคนเล็กๆ แต่เปิดโอกาสให้โปรแกรมเมอร์ทั่วไปได้เข้ามาช่วยกันพัฒนา ทำให้มีคนใช้งานจำนวนมาก และพัฒนาได้เร็วขึ้น

      4. Crossable Platform ใช้ได้กับหลายๆระบบปฏิบัติการไม่ว่าบน Windows,Unix, Linux หรืออื่นๆ โดยแทบจะไม่ต้องเปลี่ยนแปลงโค้ดคำสั่งเลย

      
5. เรียนรู้ง่าย เนื่องจาก PHP ฝังเข้าไปใน HTML และใช้โครงสร้างและไวยากรณ์ภาษาง่ายๆ
      
6. ใช้ร่วมกับ XML ได้ทันที

      7. ใช้ร่วมกับ Database ได้เกือบทุกยี่ห้อ ดังกล่าวไปแล้วข้างต้น

      8. ใช้กับระบบแฟ้มข้อมูลได้

      9. ใช้ร่วมกับข้อมูลตัวอักษรได้อย่างมีประสิทธิภาพ

      
10. ใช้กับโครงสร้างข้อมูลได้ทั้งแบบ Scalar, Array, Associative array

    11. ใช้กับการประมวลผลภาพได้



ประโยชน์ของ PHP


     ในปัจจุบัน Web Site ต่างๆได้มีการพัฒนาในด้านต่างๆ อย่างรวดเร็ว เช่น เรื่องของความสวยงามและแปลกใหม่ การบริการข่าวสารข้อมูลที่ทันสมัย เป็นสื่อกลางในการติดต่อ และสิ่งหนึ่งที่กำลังได้รับความนิยม เป็นอย่างมากซึ่ง ถือได้ว่าเป็นการปฏิวัติรูปแบบการขายของก็คือ E-commerce ซึ่งเจ้าของสินค้าต่างๆ ไม่จำเป็นต้องมีร้านค้าจริงและไม่จำเป็นต้องจ้างคนขายของอีกต่อไป ร้านค้าและตัวสินค้านั้น จะไปปรากฏอยู่บน Web Site แทน และการซื้อขายก็เกิดขึ้นบนโลกของ Internet แล้ว PHP ช่วยเราให้เป็นเจ้าของร้านบน Internet ได้อย่างไร PHP เป็นภาษาสคริปต์ที่มีความสามารถสูง สำหรับการพัฒนา Web Site และความสามารถที่โดดเด่นอีกประการหนึ่งของ PHP คือ database enabled web page ทำให้เอกสารของ HTML สามารถที่จะเชื่อมต่อกับระบบฐานข้อมูล (database) ได้อย่างมีประสิทธิภาพและรวดเร็ว จึงทำให้ความต้องการในเรื่องการจัดรายการสินค้าและรับรายการสั่งของตลอดจนการจัดเก็บ ข้อมูลต่างๆ ที่สำคัญผ่านทาง Internet เป็นไปได้อย่างง่ายดาย

     รายการระบบฐานข้อมูลที่ PHP สามารถเชื่อมต่อได้คือ
Oracle, Sybase, mSQL, MySQL, SOLID, ODBC, PostgreSQL, Adabas D, FilePro, Velocis, Informix, dbase, Unix dbm

ประวัติความเป็นมาของ PHP


     PHP ถือกำเนิดในปี 1994 เดิมทีเป็นเพียงโปรแกรมเล็กๆ ที่นาย Rasmus Lerdorf นำมาใช้งานสำหรับทำ เว็บเพจ resume ของเขา โดยตอนแรกใช้ภาษา Perl แต่กลับพบว่ามันทำงานค่อนข้างช้า จึงได้ลงมือเขียนขึ้นใหม่เองด้วยไวยากรณ์ภาษา C และให้ชื่อว่า "Personal Home Page Tools" ขณะเดียวกันก็ได้พัฒนาส่วนติดต่อกับฐานข้อมูลที่เรียกว่า Form Intepreter (FI) เมื่อเขามีของดีอยู่กับตัวใครๆที่มาเยี่ยมเว็บไซต์ของเขาต่างก็ขอสำเนาโปรแกรมดังกล่าว เพื่อเอากลับไปใช้งานเองบ้าง จนมีคนรู้จักกันดี นี่อาจจะนับเป็น PHP รุ่นที่ 1 ก็น่าจะได้ หลังจากใช้งานไประยะหนึ่งผู้ใช้ก็ร้องขอ นาย Rasmus Lerdorf ให้ขยายความสามารถของโปรแกรมให้มากขึ้น จนใกล้เคียงกับการใช้ CGI (Commom Gateway Interface)ใน Web Server กลายเป็น PHP/FI รุ่นที่ 2
     แต่ก็อีกนั่นแหละเมื่อ PHP เป็นที่นิยมของชนหมู่มาก นาย Rasmus Lerdorf คนเดียวก็ดูเหมือนจะพัฒนาคนเดียวไม่ไหว โชคดีที่ได้ผู้ร่วมงานที่ก้าวเข้ามา ช่วยปรับปรุง เปลี่ยนแปลงกันแบบขนานใหญ่ คือ นาย Zeev Suraski กับ Andi Gutmans ชาวอิสราเอลที่ Lerdorf ถึงกับเอ่ยปากชมว่าเป็นสุดยอดจริงๆ ทั้งสองคนเอา PHP ของ Lerdorf มาเขียนใหม่หมดเลยด้วย C++ และได้อีกสามหนุ่มคือ Stig Bakken,Shane Caraveo และJim Winstrad มาเป็นทีมงานที่สร้าง PHP3 โดยนาย Stig Bakken รับผิดชอบเกี่ยวกับความสามารถในการสนับสนุน Oracle, Shane Caraveo ดูแล PHP บน Windows 9x/NT และ Jim Winstrad คอยตรวจสอบข้อบกพร่องต่างๆอีกครั้ง 
      ตอนนี้ Zeev Suraski กับ Andi Gutmans ปัจจุบันร่วมกันพัฒนาต่อเป็น PHP4 โดยตั้งชื่อว่า Zend ซึ่งเป้าหมายคือชิงความเป็นเลิศเหนือ ASP โดยที่ Zend จะเป็น complie script เลย ไม่ใช่ embed script interprete ซึ่งจะทำให้ run ได้เร็วกว่า จะเหมือนกับ concept ของ advance ASP ที่ใช้ VB6 สร้างคือทำเป็น dll ให้หมด ตอนนี้ Zend ได้แจก beta ให้ tester ของเขาแล้ว แต่บอกว่า it would obviously be free for use and open source และดูเหมือนจะ support activex
Zend ก็คือ Ze(ev)+(A)nd(i Gutmans) ชาวอิสราเอลสองคนที่มาฉุดให้ PHP4 วิ่งฉิว หากสนใจก็แวะไปดูได้ที่ www. zend.com แต่ Lerdorf ก็บอกว่า ทีมงานยังเหมือนเดิม

PHP คืออะไร ?


     พีเอชพี (PHP) คือ ภาษาคอมพิวเตอร์ในลักษณะเซิร์สเวอร์-ไซด์ สคิปต์ โดยลิขสิทธิ์อยู่ในลักษณะโอเพนซอสต์ ภาษาพีเอชพีใช้สำหรับจัดทำเว็บไซต์ และแสดงผลออกมาในรูปแบบ HTML โดยมีรากฐานโครงสร้างคำสั่งมาจากภาษา ภาษาซี ภาษาวาจา และ ภาษาเพิล์น ซึ่ง ภาษาพีเอชพี นั้นง่ายต่อการเรียนรู้ ซึ่งเป้าหมายหลักของภาษานี้ คือให้นักพัฒนาเว็บไซต์สามารถเขียนเว็บเพจ  ที่มีความตอบโต้ได้อย่างรวดเร็ว

    PHP นั้นเป็นภาษาสำหรับใช้ในการเขียนโปรแกรมบนเว็บไซต์ สามารถเขียนได้หลากหลายโปรแกรมเช่นเดียวกับภาษาทั่วไป อาจมีข้อสงสัยว่า ต่างจาก HTML อย่างไร คำตอบคือ HTML นั้นเป็นภาษาที่ใช้ในการจัดรูปแบบของเว็บไซต์ จัดตำแหน่งรูป จัดรูปแบบตัวอักษร หรือใส่สีสันให้กับ เว็บไซต์ของเรา แต่ PHP นั้นเป็นส่วนที่ใช้ในการคำนวน ประมวลผล เก็บค่า และทำตามคำสั่งต่างๆ อย่างเช่น รับค่าจากแบบ form ที่เราทำ รับค่าจากช่องคำตอบของเว็บบอร์ดและเก็บไว้เพื่อนำมาแสดงผลต่อไป แม้แต่กระทั่งใช้ในการเขียน CMS ยอดนิยมเช่น Drupal , Joomla พูดง่ายๆคือเว็บไซต์จะโต้ตอบกับผู้ใช้ได้ ต้องมีภาษา PHP ส่วน HTML หรือ Javascript ใช้เป็นเพียงแค่ตัวควบคุมการแสดงผลเท่านั้น

วันศุกร์ที่ 7 พฤศจิกายน พ.ศ. 2557

นิยามและคำศัพท์พื้นฐานเกี่ยวกับระบบฐานข้อมูล

บิท (Bit) หมายถึง หน่วยของข้อมูลที่มีขนาดเล็กที่สุด
ไบท์(Byte) หมายถึง หน่วยของข้อมูลที่กิดจากการนำบิทมารวมกันเป็นตัวอักขระ (Character)
เขตข้อมูล(Field) หมายถึง หน่วยของข้อมูลที่ประกอบขึ้นจากตัวอักขระตั้งแต่หนึ่งตัวขึ้นไปมารวมกันแล้วได้ความหมายของสิ่งใดสิ่งหนึ่ง เช่น ชื่อ ที่อยู่ เป็นต้น
ระเบียน(Record) หมายถึง หน่วยของข้อมูลที่เกิดจากการนเอาเขตข้อมูลหลาย ๆ เขตข้อมูลมารวมกัน เพื่อเกิดเป็นข้อมูลเรื่องใดเรื่องหนึ่ง เช่น ข้อมูลของนักศึกษา 1 ระเบียน (1 คน) จะประกอบด้วย
รหัสประจำตัวนักศึกษา 1 เขตข้อมูล
ชื่อนักศึกษา 1 เขตข้อมูล
ที่อยู่ 1 เขตข้อมูล
แฟ้มข้อมูล(File) หมายถึงหน่วยของข้อมูลที่เกิดจากการนำข้อมูลหลาย ๆ ระเบียนที่เป็นเรื่องเดียวกันมารวมกัน เช่น แฟ้มข้อมูลนักศึกษา แฟ้มข้อมูลลูกค้า แฟ้มข้อมูลพนักงาน


ความสำคัญของการประมวลผลแบบระบบฐานข้อมูล


         จากการจัดเก็บข้อมูลรวมเป็นฐานข้อมูลจะก่อให้เกิดประโยชน์ดังนี้
1. สามารถลดความซ้ำซ้อนของข้อมูลได้
   การเก็บข้อมูลชนิดเดียวกันไว้หลาย ๆ ที่ ทำให้เกิดความซ้ำซ้อน (Redundancy) ดังนั้นการนำข้อมูลมารวมเก็บไว้ในฐานข้อมูล จะชาวยลดปัญหาการเกิดความซ้ำซ้อนของข้อมูลได้ โดยระบบจัดการฐานข้อมูล (Database Management System : DBMS) จะช่วยควบคุมความซ้ำซ้อนได้ เนื่องจากระบบจัดการฐานข้อมูลจะทราบได้ตลอดเวลาว่ามีข้อมูลซ้ำซ้อนกันอยู่ที่ใดบ้าง
2. หลีกเลี่ยงความขัดแย้งของข้อมูลได้
    หากมีการเก็บข้อมูลชนิดเดียวกันไว้หลาย ๆ ที่และมีการปรับปรุงข้อมูลเดียวกันนี้ แต่ปรับปรุงไม่ครบทุกที่ที่มีข้อมูลเก็บอยู่ก็จะทำให้เกิดปัญหาข้อมูลชนิดเดียวกัน อาจมีค่าไม่เหมือนกันในแต่ละที่ที่เก็บข้อมูลอยู่ จึงก่อใให้เกิดความขัดแย้งของข้อมูลขึ้น (Inconsistency)
3. สามารถใช้ข้อมูลร่วมกันได้
   ฐานข้อมูลจะเป็นการจัดเก็บข้อมูลรวมไว้ด้วยกัน ดังนั้นหากผู้ใช้ต้องการใช้ข้อมูลในฐานข้อมูลที่มาจากแฟ้มข้อมูลต่างๆ ก็จะทำได้โดยง่าย
4. สามารถรักษาความถูกต้องเชื่อถือได้ของข้อมูล
   บางครั้งพบว่าการจัดเก็บข้อมูลในฐานข้อมูลอาจมีข้อผิดพลาดเกิดขึ้น เช่น จากการที่ผู้ป้อนข้อมูลป้อนข้อมูลผิดพลาดคือป้อนจากตัวเลขหนึ่งไปเป็นอีกตัวเลขหนึ่ง โดยเฉพาะกรณีมีผู้ใช้หลายคนต้องใช้ข้อมูลจากฐานข้อมูลร่วมกัน หากผู้ใช้คนใดคนหนึ่งแก้ไขข้อมูลผิดพลาดก็ทำให้ผู้อื่นได้รับผลกระทบตามไปด้วย ในระบบจัดการฐานข้อมูล (DBMS) จะสามารถใส่กฎเกณฑ์เพื่อควบคุมความผิดพลาดที่เกดขึ้น
5. สามารถกำหนดความป็นมาตรฐานเดียวกันของข้อมูลได้
   การเก็บข้อมูลร่วมกันไว้ในฐานข้อมูลจะทำให้สามารถกำหนดมาตรฐานของข้อมูลได้รวมทั้งมาตรฐานต่าง ๆ ในการจัดเก็บข้อมูลให้เป็นไปในลักษณะเดียวกันได้ เช่นการกำหนดรูปแบบการเขียนวันที่ ในลักษณะ วัน/เดือน/ปี หรือ ปี/เดือน/วัน ทั้งนี้จะมีผู้ที่คอยบริหารฐานข้อมูลที่เราเรียกว่า ผู้บริหารฐานข้อมูล (Database Administrator : DBA) เป็นผู้กำหนดมาตรฐานต่างๆ
6. สามารถกำหนดระบบความปลอดภัยของข้อมูลได้
   ระบบความปลอดภัยในที่นี้ เป็นการป้องกันไม่ให้ผู้ใช้ที่ไม่มีสิทธิมาใช้ หรือมาเห็นข้อมูลบางอย่างในระบบ ผู้บริหารฐานข้อมูลจะสามารถกำหนดระดับการเรียกใช้ข้อมูลของผู้ใช้แต่ละคนได้ตามความเหมาะสม
7. เกิดความเป็นอิสระของข้อมูล
    ในระบบฐานข้อมูลจะมีตัวจัดการฐานข้อมูลที่ทำหน้าที่เป็นตัวเชื่อมโยงกับฐานข้อมูล โปรแกรมต่าง ๆ อาจไม่จำเป็นต้องมีโครงสร้างข้อมูลทุกครั้ง ดังนั้นการแก้ไขข้อมูลบางครั้ง จึงอาจกระทำเฉพาะกับโปรแกรมที่เรียกใช้ข้อมูลที่เปลี่ยนแปลงเท่านั้น ส่วนโปรแกรมที่ไม่ได้เรียกใช้ข้อมูลดังกล่าว ก็จะเป็นอิสระจากการเปลี่ยนแปลง



วันอาทิตย์ที่ 2 พฤศจิกายน พ.ศ. 2557

ฐานข้อมูลเชิงสัมพันธ์


        ฐานข้อมูลเชิงสัมพันธ์ (Relational Database) เป็นรูปแบบของฐานข้อมูลที่นิยมใช้ในปัจจุบัน โดยถูกคิดค้นและพัฒนาโดย E.F. Codd เป็นรูปแบบที่เข้าใจง่ายสำหรับผู้ใช้ ไม่ซับซ้อนมีเครื่องมือที่ช่วยในการเรียกดูข้อมูล โดยใช้คำสั่งง่าย เช่น SQL 
        โมเดลนี้ใช้ relation หรือตาราง 2 มิติ แทน entity
              ศัพท์ที่เกี่ยวข้อง
              Relation = Table
              Tuple = Row or Record
              Attribute = Column or Field
              Cardinality = Number of Rows
              Primary = Unique Identifier
              Domain = ขอบข่ายของค่าข้อมูล เช่น วันที่เริ่มทำงาน 

             ให้แต่ละ column ของตารางแทน attribute ให้แต่ละ row แทนค่าจริงของ 1 record (เรียก tuple)ฐานข้อมูลเชิงสัมพันธ์ เป็นการจัดเก็บรวบรวมข้อมูลเป็นแถวและคอลัมน์ในลักษณะตารางสองมิติ ที่ประกอบด้วย attribute ที่แสดงคุณสมบัติที่แสดงคุณสมบัติของ Relationship โดยผ่านกระบวนการทำให้เป็นบรรทัดฐาน (Normalized) ในระหว่างการออกแบบ เพื่อลดความซ้ำซ้อน และการจัดฐานข้อมูลอย่างมีประสิทธิภาพ
             เป็นฐานข้อมูลซึ่งให้ภาพของข้อมูล ทั้งในระดับภายนอก(External Level) และ ระดับแนวคิด (Conceptual Level) แก่ผู้ใช้ฐานข้อมูลได้เป็นอย่างดี

       คุณลักษณะในการจัดเก็บข้อมูล
             ในแต่ละ Relation ประกอบด้วยข้อมูลของ Attribyte ต่างๆที่จัดเก็บในรูปตาราง 2 มิติ คือ Row, Column
              ข้อมูลในแต่ละแถวจะไม่ซ้ำกัน
              การจัดเรียงลำดับของข้อมูลในแต่ละแถวไม่เป็นสาระสำคัญ
              การจัดเรียงลำดับของ Attribute จะเรียงลำดับก่อนหลังอย่างไรก็ได้
              ค่าของข้อมูลในแต่ละ Attribute ของ Tuple หนึ่งๆ จะบรรจุได้เพียงค่าเดียว
              ค่าของข้อมูลในแต่ละ Attribute จะบรรจุค่าของข้อมูลประเภทเดียวกัน

       กฎที่เกี่ยวข้องกับคีย์ในฐานข้อมูลเชิงสัมพันธ์
              1. กฎความบูรณภาพของเอนทิตี้ (The Entity Intergrity Rule)  กฎนี้ระบุไว้ว่าแอททริบิวต์ใดที่เป็นคีย์หลัก ข้อมูลในแอททริบิวต์นั้นจะเป็นค่าว่าง(Null) ไม่ได้ ความหมายของการเป็นค่าว่างไม่ได้(Not Null) หมายความถึง ข้อมูลของแอททริบิวต์ที่เป็นคีย์หลักจะไม่ทราบค่าที่แน่นอนหรือไม่มีค่าไม่ได้

              2. กฎความบูรณภาพของการอ้างอิง (The Referential IntegrityRule) การอ้างอิงข้อมูลระหว่างรีเลชั่นในฐานข้อมูลเชิงสัมพันธ์จะใช้คีย์นอกของรีเลชั่นหนึ่งไปตรวจสอบกับค่าของแอททริบิวต์ที่เป็นคีย์หลักของอีกรีเลชั่นหนึ่งเพื่อเรียกดูข้อมูลอื่นๆที่เกี่ยวข้องหรือค่าของคีย์นอกจะต้องอ้างอิงให้ตรงกับค่าของคีย์หลักได้จึงจะสามารถเชื่อมโยงข้อมูลระหว่างสองรีเลชั่นได้สำหรับคีย์นอกจะมีค่าว่างได้หรือไม่ขึ้นอยู่กับกฎเกณฑ์การออกแบบฐานข้อมูล เช่น ในกรณีที่รีเลชั่นพนักงานมี Depnoเป็นคีย์นอกอาจจะถูกระบุว่าต้องทราบค่าแต่ในกรณีพนักงานทดลองงานอาจยังไม่มีค่า Depno เพราะยังไม่ได้ถูกบรรจุในกรณีที่มีการลบหรือแก้ใขข้อมูลของแอททริบิวต์ที่เป็นคีย์หลักซึ่งมีคีย์นอก จากอีกรีเลชั่นหนึ่งอ้างอิงถึง จะทำการลบหรือแก้ใขข้อมูลได้หรือไม่ ขึ้นอยู่กับการออกแบบฐานข้อมูล ว่าได้ระบุให้แอททริบิวต์มีคุณสมบัติอย่างไร ซึ่งมีโอกาสเป็นไปได้ 4 ทางเลือก

                การลบหรือแก้ใขข้อมูลแบบมีข้อจำกัด (Restrict) การลบหรือแก้ไขข้อมูลจะกระทำได้ เมื่อข้อมูลของคีย์หลักในรีเลชั่นหนึ่งไม่มีข้อมูลที่ถูกอ้างอิง โดยคีย์นอกของอีกรีเลชั่นหนึ่งเช่น รหัสแผนก Depno ในรีเลชั่นDepจะถูกแก้ใขหรือลบทิ้งต่อเมื่อไม่มีพนักงานคนใดสังกัดอยู่ในแผนกนั้น

                - การลบหรือแก้ไขข้อมูลแบบต่อเรียง (Cascade) การลบหรือการแก้ใขข้อมูล จะทำแบบเป็นลูกโซ่ คือ หากมีการแก้ไขหรือลบข้อมูลของคีย์หลักในรีเลชั่นหนึ่งระบบจะทำการลบหรือแก้ใขข้อมูลของคีย์นอกในอีกรีเลชั่นหนึ่งที่อ้างอิงถึงข้อมูลของคีย์หลักที่ถูกลบให้ด้วย เช่น ในกรณีที่ยกเลิกแผนก 9 ในEntityแผนก ข้อมูลของพนักงานที่อยู่แผนก 10ในEntityพนักงานจะถูกลบออกไปด้วย

                - การลบหรือแก้ไขข้อมูลโดยเปลี่ยนเป็นค่าว่าง (Nullify) การลบหรือแก้ใขข้อมูลจะทำได้เมื่อมีการเปลี่ยนค่าของคีย์นอกในข้อมูลที่ถูกอ้างอิงให้เป็นค่าว่างเสียก่อน เช่น พนักงานที่อยู่ในแผนกที่ 9 จะถูกเปลี่ยนค่าเป็นค่าว่างก่อนหลังจากนั้น การลบข้อมูลของแผนกที่มีรหัส 9 จะถูกลบทิ้งหรือแก้ไขทันที ภายใน Entity แผนก

                - การลบหรือแก้ไขข้อมูลแบบใช้ค่าโดยปริยาย ( Default) การลบหรือแก้ไขข้อมูลของคีย์หลัก สามารถทำได้โดยถ้าหากมีคีย์นอกที่อ้างอิงถึงคีย์หลักที่ถูกลบหรือแก้ไข ก็จะทำการปรับค่าของคีย์นอกนั้นโดยปริยาย (Default Value) ที่ถูกกำหนดขึ้นเช่น ในกรณีที่ยกเลิกแผนก 9 ในEntity แผนก ข้อมูลของพนักงานที่อยู่แผนก 9 ใน Entity พนักงานจะถูกเปลี่ยนค่าเป็น 00 ซึ่งเป็นค่าโดยปริยาย ที่หมายความว่า ไม่ได้สังกัดแผนกใด




 · 

ระบบฐานข้อมูล คืออะไร ?


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

        1. ข้อมูล (Data) ข้อมูลในฐานข้อมูลจะต้องมีคุณสมบัติ 2 ประการ คือ เบ็ดเสร็จ (Integrate) ฐานข้อมูลเป็นแหล่งรวบรวมข้อมูลจากแฟ้มต่าง ๆ ไว้ครบถ้วนสมบูรณ์ เพื่อลดข้อมูลซ้ำซ้อนระหว่างแฟ้มใช้ร่วมกันได้ (Share) ข้อมูลแต่ละชิ้นในฐานข้อมูลสามารถนำมาแบ่งใช้กันได้ระหว่างผู้ใช้ต่าง ๆ ในระบบ

        2. ฮาร์ดแวร์ (Hardware) ประกอบด้วย อุปกรณ์บันทึกข้อมูลเช่น จานแม่เหล็ก , I/O device , Device controller , I/O channels , หน่วยประมวลผล และหน่วยความจำหลัก

        3. ซอฟต์แวร์ (Sorftware) ตัวกลางเชื่อมระหว่างฐานข้อมูลและผู้ใช้คือ DBMS เป็นซอฟต์แวร์ที่สำคัญที่สุดของระบบฐานข้อมูล นอกจากนี้ยังมี Utility , Application Develoment tool , Desisn aids , Report writers , ect.

        4. ผู้ใช้ (Users) มี 3 กลุ่มใหญ่ ๆ คือ
           - Application Programmer เขียนโปรแกรมประยุกต์
           - End Users ผู้ใช้ที่อยู่กับ Online terminal เข้าถึงข้อมูลโดยผ่านโปรแกรมประยุกต์ หรือผ่านภาษาเรียกค้น (Query Language)
           - Data Addministrator & Database Administrator

    DA ผู้บริหารอาวุโส เป็นผู้ตัดสินใจว่าจะเก็บข้อมูลใดในฐานข้อมูลก่อน และกำหนดนโยบายการรักษาความปลอดภัยของข้อมูล

    DBA ผู้เชี่ยวชาญระดับมืออาชีพ เป็นผู้สร้างฐานข้อมูลและนำมาใช้งานจริง โดยควบคุมทางด้านเทคนิคที่จำเป็นในการดำเนินนโยบายที่กำหนดโดย DA