หน้าเว็บ

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

ฟังก์ชัน PHP

ฟังก์ชัน PHP
                ฟังก์ชัน คือ โปรแกรมย่อยที่สามารถประมวลและคืนผลลัพธ์จากการประมวลนั้นสู่โปรแกรมหลักได้ ซึ่งจำเป็นในการเขียนโปรแกรมเพื่อช่วยให้การทำงานมีประสิทธิภาพที่สูงขึ้น
                โดยฟังก์ชันของ PHP มี 2 ส่วน คือ
§  ฟังก์ชันที่ผู้ใช้สร้างขึ้นมาเอง
§  ฟังก์ชันที่มากับ PHP (สามารถเรียกใช้งานได้ทันที)
ชื่อของคลาสและฟังก์ชันที่ผู้ใช้ทำการกำหนดเองตลอดจน constructs และ keywords ต่างๆ เช่น echo, while, class เป็นต้น มีคุณสมบัติเป็นแบบ case-insensitive ตัวอย่างเช่น echo, ECHO,EcHo
แต่ในทางกลับกัน ชื่อตัวแปรต่างๆ นั้น PHP จะมองเป็น case-insensitive ตัวอย่าง เช่น $name, SNAME และ $NaMe

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


§  ฟังก์ชันที่มีการส่งค่าระหว่างฟังก์ชัน
ฟังก์ชันแบบนี้จะมีการรับค่าเพื่อนำไปคำนวณภายในฟังก์ชันจนได้ผลลัพธ์ที่ต้องการออกมา ภายในฟังก์ชันเป็นการใช้โครงสร้าง ตัวแปร โอเปอเรเตอร์ อื่นๆ รูปแบบการกำหนดฟังก์ชันจะเป็นดังนี้



การใช้ static ในฟังก์ชัน

การผ่านค่าตัวแปลแบบ reference ในฟังก์ชัน

การนำค่านอกฟังก์ชันมาใช้โดยใช้คำสั่ง global

(ที่มา : www.spu.ac.th/sdm/files/2012/07/Lecture-4.pdf)

การกำหนดคุณสมบัติของฟิลด์ข้อมูล

การกำหนดคุณสมบัติของฟิลด์ข้อมูล

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

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

-                  Decimal Place
            ใช้สำหรับกำหนดว่าจะให้แสดงจุดทศนิยมกี่ตำแหน่ง ซึ่งจะใช้ได้กับข้อมูลชนิด Numberและ Currency เท่านั้น

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

-                   Caption
            ใช้กำหนดข้อความที่แสดงในส่วนหัวคอลัมน์ในมุมมองแผ่นตารางข้อมูล (Datasheet View) หรือเป็นชื่อที่ปรากฏในฟอร์ม หรือรายงาน

-                   Default Value
            ใช้สำหรับกำหนดค่าเริ่มต้นของข้อมูลในฟิลด์ ถ้ามีการเพิ่มเรคคอร์ดใหม่ลงไปในตาราง ผู้ใช้จะได้ไม่ต้องเสียเวลาป้อนข้อมูล ถ้าเป็นข้อมูลที่ตรงกับค่าเริ่มต้นนี้

-                   Validation Rule
            ใช้สำหรับกำหนดเงื่อนไขสำหรับการป้อนข้อมูล เช่น ในฟิลด์นี้จะต้องป้อนข้อมูลเพียง 2 ค่าคือ หญิงและชายเท่านั้น ถ้าป้อนนอกเหนือจากนี้แล้ว จะแสดงกรอบหน้าต่างเตือน และไม่สามารถป้อนข้อมูลนอกเหนือจากที่กำหนดนี้ได้ ตัวอย่างเช่น
Validation Text  ใช้สำหรับแสดงข้อความแจ้งเตือน เมื่อป้อนผิดเงื่อนไขในช่อง Validation Rule ซึ่งสามารถป้อนข้อความแจ้งเตือนได้ไม่เกิน 255 ตัวอักษร

-                   Required
            ใช้สำหรับกำหนดคุณสมบัติว่าผู้ใช้จำเป็นจะต้องป้อนข้อมูลลงไปในฟิลด์ที่กำหนดนี้หรือไม่ถ้าเลือก Yes จะต้องป้อนข้อมูลลงไปในฟิลด์ แต่ถ้าเลือก No ไม่จำเป็นต้องป้อนข้อมูลก็ได้


ฟิลด์

ฟิลด์

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

·   ฟิลด์ตัวเลข (numeric field) ประกอบด้วย อักขระที่เป็นตัวเลข ซึ่งอาจเป็นเลขจำนวนเต็มหรือทศนิยมและอาจมีเครื่องหมายลบหรือบวก เช่น ยอดคงเหลือในบัญชีเป็นกลุ่มของตัวเลข

·       ฟิลด์ตัวอักษร (alphabetic field) ประกอบด้วย อักขระที่เป็นตัวอักษรหรือช่องว่าง (blank)เช่น ชื่อลูกค้าเป็นกลุ่มของตัวอักษร

·       ฟิลด์อักขระ (character field หรือ alphanumeric field) ประกอบด้วย อักขระซึ่งอาจจะเป็นตัวเลขหรือตัวอักษรก็ได้ เช่น ที่อยู่ของลูกค้า

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

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

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

ฐานข้อมูลเชิงสัมพันธ์
ความหมายของศัพท์เทคนิคที่เกี่ยวข้อง
ความหมายของ  รีเลชั่น  (Relation)  มีคำเรียกทั่ว ๆ ไปว่า ตาราง  (  Table  )  เป็นคำนามที่แทนข้อมูลเรื่องใดเรื่องหนึ่ง
ความหมายของ  ทูเพิล  (  Tuple )  คือค่าของข้อมูลในแต่ละแถว  (Row) หรือ  เรคคอร์ด (Record)
ความหมายของ   คาร์ดินาลลิตี้   (Cardinality)  คือ  จำนวนแถวแต่ละข้อมูลในแต่ละรีเลชั่น
ความหมายของ   แอทริบิวต์  (Attribute)  คือรายละเอียดของข้อมูลในแต่ละคอลัมน์ ซึ่งแสดงให้รู้ว่าประกอบด้วยอะไรบ้าง  หรือรู้จักในรูปของคอลัมน์  (Column)  หรือ  ฟิลด์  (File)
 ความหมายของ   คีย์หลัก   (Primary  key)  คือแอทริบิวต์ที่มีค่าของข้อมูลเป็นเอกลักษณ์หรือเฉพาะเจาะจงและจะเป็นค่าที่ไม่ซ้ำกันในแต่ละทูเพิล
ความหมายของ   โดเมน (Domain) คือขอบเขตของค่าของข้อมูลที่ควรจะเป็นในแต่ละแอทริบิวต์
ความหมายของฐานข้อมูลเชิงสัมพันธ์
ความหมายของฐานข้อมูลเชิงสัมพันธ์เป็นฐานข้อมูลในระดับภายนอก  และระดับแนวคิดแก่ผู้ใช้ข้อมูลได้เป็นอย่างดี  รีเลชั่ต่าง ๆ ในฐานข้อมูลจะประกอบด้วย  แอทริบิวต์ต่าง ๆ ที่ถูกออกแบบมาเพื่อลดความซ้ำซ้อนของการเก็บข้อมูล  และสามารถเรียกใช้ข้อมูลได้อย่างมีประสิทธิภาพ
ข้อดีของฐานข้อมูลเชิงสัมพันธ์
1. ฐานข้อมูลเชิงสัมพันธ์เป็นกลุ่มข้อมูลของรีเลชั่นหรือตารางที่ข้อมูลถูกจัดเก็บเป็นแถวหรือคอลัมน์  ซึ่ง
    ทำให้ผู้ใช้เห็นภาพของข้อมูลได้ง่าย
2. ผู้ใช้ไม่ต้องรู้ว่าข้อมูลถูกจัดเก็บอย่างไร  รวมถึงวิธีการเรียกใช้ข้อมูล
3. ภาษาที่ใช้เป็นการเรียกใช้ข้อมูล  เป็นลักษณะคล้ายภาษาอังกฤษ  และไม่จำเป็นต้องเขียนเป็นลำดับขั้น
4. การเรียกใช้หรือเชื่อมโยงข้อมูลทำได้ง่าย โดยใช้โอเปอร์เรเตอร์ทางคณิตศาสตร์
คุณลักษณะในการจัดเก็บข้อมูล
ภาษาที่ใช้ในการควบคุมข้อมูล  ประกอบด้วยคำสั่งที่ใช้ในการควบคุมความถูกต้องของข้อมูล  หรือป้องกันการเกิดเหตุการณ์ที่ผู้ใช้หลายคนเรียกใช้ข้อมูลพร้อมกัน ในขณะที่ข้อมูลนั้นๆกำลังปรับปรุงแก้ไขอยู่ซึ่งเป็นเวลาเดียวกับผู้ใช้อีกคนหนึ่งก็เรียกใช้ข้อมูลนี้  และได้ค่าที่ไม่ถูกต้อง  เพราะผู้ใช้คนแรกยังปรับปรุงแก้ไขไม่เสร็จ
คีย์แบ่งออกเป็น 2 ประเภท คือ
1.              คีย์หลัก (Primary Key)
เป็นรีเลชั่นที่ถูกกำหนดขึ้นเพื่อเก็บข้อมูลเพื่อนำข้อมูลไปใช้ เมื่อมีการสร้างรีเลชั่นในภาษาสำหรับนิยามข้อมูล  (  DDL )  เช่น  SQL  คำสั่ง  CREATE  TABLE  เป็นการสร้างรีเลชั่นหลัก  หลังจากนั้นก็จะทำการเก็บข้อมูลเพื่อการเรียกใช้ข้อมูลในภายหลัง  รีเลชั่นหลักจะเป็นตารางที่มีการเก็บข้อมูลจริงไว้
2.              คีย์นอก (Foreign Key)
เป็นรีเลชั่นที่ถูกสร้างขึ้นตามความต้องการใช้ข้อมูลของผู้ใช้แต่ละคน  เพราะผู้ใช้แต่ละคนในฐานข้อมูลอาจต้องการใช้ข้อมูลในลักษณะที่แตกต่างกัน  จึงทำการกำหนดวิวของตนเองขึ้นจากรีเลชั่นหลักขึ้นมาต่างหาก  เพื่อความสะดวกในการเรียกใช้ข้อมูล  และช่วยในการรักษาความปลอดภัยของฐานข้อมูลทำได้ง่ายขึ้น
ประเภทของรีเลชั่น
อาจจำแนกออกเป็นหลายประเภท  แต่ประเภทที่มีในการจัดการฐานข้อมูลทั่ว ๆ ไป  ดังนี้  คือ  
1. รีเลชั่นหลัก   (Base  Relation)
เป็นรีเลชั่นที่ถูกกำหนดขึ้นเพื่อเก็บข้อมูลเพื่อนำข้อมูลไปใช้ เมื่อมีการสร้างรีเลชั่นในภาษาสำหรับนิยามข้อมูล  (  DDL )  เช่น  SQL  คำสั่ง  CREATE  TABLE  เป็นการสร้างรีเลชั่นหลัก  หลังจากนั้นก็จะทำการเก็บข้อมูลเพื่อการเรียกใช้ข้อมูลในภายหลัง  รีเลชั่นหลักจะเป็นตารางที่มีการเก็บข้อมูลจริงไว้
2. วิว (View)
เป็นรีเลชั่นที่ถูกสร้างขึ้นตามความต้องการใช้ข้อมูลของผู้ใช้แต่ละคน  เพราะผู้ใช้แต่ละคนในฐานข้อมูลอาจต้องการใช้ข้อมูลในลักษณะที่แตกต่างกัน  จึงทำการกำหนดวิวของตนเองขึ้นจากรีเลชั่นหลักขึ้นมาต่างหาก  เพื่อความสะดวกในการเรียกใช้ข้อมูล  และช่วยในการรักษาความปลอดภัยของฐานข้อมูลทำได้ง่ายขึ้น
กฎที่เกี่ยวข้องในฐานข้อมูล
กฎความบูรณภาพของเอนทิตี้
กฎนี้ระบุว่า  แอทริบิวต์ใดที่จะเป็นคีย์หลักในแอทริบิวต์นั้นจะเป็นค่าเอกลักษณ์ ( Unique )  และเป็นค่าว่าง  (Null)  ความหมายของการเป็นค่าว่างไม่ได้  (Not  full)  ในที่นี้จะหมายรวมถึงข้อมูลของแต่ละ
แอทริบิวต์ที่เป็นค่าหลักจะเป็นค่าว่างไม่ได้  และเป็นค่าเอกลักษณ์ในการที่จะระบุค่าของแอทริบิวต์อื่น ๆ ใน
ทูเพิลอื่นๆได้
กฎความบูรณภาพของการอ้างอิง
การอ้างอิงข้อมูลระหว่างรีเลชั่นในฐานข้อมูลเชิงสัมพันธ์จะใช้คีย์นอกของรีเลชั่นหนึ่งไปตรวจสอบกับค่าของแอทริบิวต์ที่เป็นคีย์หลักของรีเลชั่นหนึ่งเพื่อเรียกดูข้อมูลอื่นๆที่เกี่ยวข้อง คือ ค่าของคีย์นอกจะต้องสามารถอ้างอิงให้ตรงกันกับค่าขอแงคีย์หลักได้  จึงจะเชื่อมโยงหรืออ้างอิงข้อมูลข้อมูลระหว่างรีเลชั่นได้
ในกรณีที่มีการแก้ไขหรือลบข้อมูลจะทำได้หรือไม่ขึ้นกับการออกแบบฐานข้อมูลมี 4 ทางเลือก คือ
1. การลบหรือแก้ไขข้อมูลแบบมีข้อจำกัด (Restrict)
การลบหรือการแก้ไขข้อมูลจะกระทำได้เมื่อข้อมูลของคีย์หลักในรีเลชั่นหนึ่งไม่มีข้อมูลที่จะอ้างอิงโดยคีย์นอกำจากรีเลชั่นหนึ่ง  เช่น  รหัสแผนก  DEPNO  ในรีเลชั่น  DEP  จะถูกแก้ไขหรือลบทิ้งก็ต่อเมื่อไม่มี
พนักงานคนใดสังกัดอยู่
2. การลบหรือแก้ไขข้อมูลแบบต่อเรียง (Cascade)
การลบหรือการแก้ไขข้อมูลจะทำแบบลูกโซ่  คือ  หากมีการแก้ไขหรือลบข้อมูลของคีย์หลักในรีเลชั่น หนึ่ง  ระบบจะทำการลบหรือการแก้ไขข้อมูลของคีย์นอกในรีเลชั่นหนึ่ง  ที่อ้างอิงถึงข้อมูลของคีย์หลักที่ถูกลบให้ได้
3. การลบหรือแก้ไขข้อมูลโดยเปลี่ยนเป็นค่าว่าง (Nullify)
การลบหรือการแก้ไขข้อมูลจะทำได้เมื่อมีการเปลี่ยนค่าของคีย์นอกที่ถูกอ้างอิงให้เป็นค่าว่างเสียก่อน
4. แก้ไขข้อมูล โดยกำหนดค่าปริยาย (Default)
การแก้ไขข้อมูลของคีย์หลักสามารถทำได้  โดยถ้าหากมีคีย์นอกที่อ้างอิงถึงคีย์หลักที่ถูกแก้ไข  จะทำการปรับค่าของคีย์นอกนั้นเป็นค่าโดยนอกนั้นเป็นค่าโดยปริยาย  ที่ถูกกำหนดขึ้น


ภาษาที่ใช้ในฐานข้อมูล

ภาษาที่ใช้ในฐานข้อมูล
ภาษาที่ใช้ในฐานข้อมูลมี 3 ประเภท คือ
1.              ภาษาสำหรับนิยามข้อมูล ( Data Defintion : DDL )  
ภาษาสำหรับนิยามข้อมูล ประกอบด้วยคำสั่งที่ใช้ในการกำหนดโครงสร้างข้อมูลว่ามี  แอทริบิวต์อะไร  เก็บข้อมูลประเภทใด  การเพิ่มแอทริบิวต์  การกำหนดดัชนีที่ใช้ในการจัดเก็บข้อมูล  การกำหนดวิวของผู้ใช้จากเอนทิตี้พนักงาน  สามารถใช้ภาษาที่ใช้ในการจัดการฐานข้อมูล  กำหนดโครงสร้างของตารางพนักงานว่าประกอบด้วยอะไรบ้าง  ภาษาที่ใช้ คือ  SQL  
2.              ภาษาสำหรับจัดดำเนินการข้อมูล  ( Data Mainpopula Langquage )
ภาษาสำหรับจัดดำเนินการข้อมูล  ประกอบด้วยคำสั่งที่ใช้ในการเรียกใช้ข้อมูล  การเปลี่ยนแปลงข้อมูล การเพิ่มหรือลบข้อมูล  สามารถใช้ SQL ในการเรียกข้อมูลต่าง ๆ
3.              ภาษาที่ใช้ในการควบคุมข้อมูล ( Data Control Langquage )
ภาษาที่ใช้ในการควบคุมข้อมูล  ประกอบด้วยคำสั่งที่ใช้ในการควบคุมความถูกต้องของข้อมูล  หรือป้องกันการเกิดเหตุการณ์ที่ผู้ใช้หลายคสเรียกใช้ข้อมูลพร้อมกัน  ในขณะที่ข้อมูลนั้น ๆ กำลังปรับปรุงแก้ไขอยู่   ซึ่งเป็นเวลาเดียวกับผู้ใช้อีกคนหนึ่งก็เรียกใช้ข้อมูลนี้  และได้ค่าที่ไม่ถูกต้อง  เพราะผู้ใช้คนแรกยังปรับปรุงแก้ไขไม่เสร็จ


สถาปัตยกรรมข้อมูล

สถาปัตยกรรมข้อมูล
สถาปัตยกรรมฐานข้อมูล มี 3 ระดับ คือ
ระดับภายนอก หรือ วิว (External หรือ view)  
ระดับภายนอกหรือวิว  เป็นระดับของข้อมูลที่ประกอบด้วยภาพที่ผู้ใช้แต่ละคนมองข้อมูล  (View)  เค้าร่างของฐานข้อมูลระดับนี้จะเกิดภาพและความต้องการของข้อมูลของผู้ใช้
 ระดับแนวคิด (Conceptual Level)
ประกอบด้วยเค้าร่างที่อธิบายถึงฐานข้อมูลรวมว่ามีเอนทิตี้     โครงสร้างของข้อมูล     ความสัมพันธ์ของข้อมูล  กฎเกณฑ์และข้อจำกัดต่าง ๆ อย่างไรบ้าง   ข้อมูลในระดับนี้เป็นข้อมูลที่ผ่านการวิเคราะห์   และออกแบบฐานข้อมูลต่าง ๆ ในระดับภายนอกสามารถเรียกใช้ข้อมูลได้  ซึ่งผู้ใช้ทั่วไปในระดับภายนอก  อาจจะต้องการใช้ข้อมูลที่แตกต่างกัน 
ระดับภายใน (Internal หรือ Physical Level)
ระดับภายใน  ประกอบด้วยเค้าร่างที่เกี่ยวข้องกับการจัดเก็บข้อมูลจริง ๆ  ว่ามีโครงสร้างการจัดเก็บรูปแบบใด  รวมถึงวิธีการเข้าถึงข้อมูลต่าง ๆ ในฐานข้อมูลเพื่อดึงข้อมูลที่ต้องการ  เช่น  การอินเด็กซ์  เป็นต้น  ความสัมพันธ์ระหว่างข้อมูลระดับต่าง ๆ จะถูกจัดการโดยระบบการจัดการฐานข้อมูล  ซึ่งเป็นการแปลความหมายของข้อมูลจากระดับหนึ่งไปยังอีกระดับหนึ่งนี้เรียกว่า  การแปลส่ง
ระดับของข้อมูลแบ่งออกเป็น  3 ระดับ ดังนั้นข้อมูลดังกล่าวจะประกอบด้วยเค้าร่าง
เค้าร่างของฐานข้อมูล
ในการออกแบบฐานข้อมูลใด  จะต้องระบุถึงเอนทิตี้ชื่ออะไรบ้าง และในแต่ละเอนทิตี้ประกอบด้วยแอทริบิวต์อะไร  รวมถึงความสัมพันธ์ของข้อมูลในเอนทิตี้   ที่มีอยู่ว่ามีความสัมพันธ์ในลักษณะใด รายละเอียดของโครงสร้างของฐานข้อมูลนี้เรียกว่า  เค้าร่างของฐานข้อมูล  (Database  Schema)  โดยทั่วไปเค้าร่างของฐานข้อมูลมักจะไม่เปลี่ยนแปลงบ่อยนัก แต่อาจมีการเปลี่ยนแปลงบ้างในบางครั้ง  ถ้าการเปลี่ยนแปลงทำให้ฐานข้อมูลเหมาะสมมากยิ่งขึ้น  ข้อมูลจะถูกบันทึกลงในฐานข้อมูลในขณะใดขณะหนึ่ง  เรียกว่า  อินสแตนซ์   คือ  เมื่อกำหนดเค้าร่างของฐานข้อมูลจะยังไม่มีข้อมูลอยู่คือ  อินสแตนซ์ว่าง  จนกว่าจะมีการบันทึกข้อมูลลง  
ซึ่งมี 3 ประเภท คือ
1.  เค้าร่างภายใน   (Internal  Schema)
เป็นเค้าร่างที่แสดงรายละเอียดถึงลักษณะการจัดเก็บโครงสร้างของฐานข้อมูลจริงๆ

2.  เค้าร่างแนวคิด  (Conceptual  Schema)
เค้าร่างแนวคิดเป็นเค้าร่างที่แสดงรายละเอียดของฐานข้อมูลทั้งหมด  ไม่ว่าจะเป็นชื่อของเอนทิตี้  โครงสร้างของฐานข้อมูล  ความสัมพันธ์  และข้อจำกัดต่าง ๆ  

3.  เค้าร่างภายนอก  (External  Schema  หรือ  Subschema  หรือ  View)
เค้าร่างภายนอกเป็นเค้าร่างในระดับภายนอกที่แสดงถึงรายละเอียดของข้อมูลที่ผู้ใช้ต่าง ๆ ต้องการ 
การแบ่งระดับของข้อมูลรวมถึงการเชื่อมโยงของข้อมูล  ล้วนแต่เป็นจุดเด่นของฐานข้อมูล  ในด้านความเป็นอิสระของข้อมูล  ซึ่งแบ่งออกได้เป็น  2  ประเภท  คือ
1. ความเป็นอิสระของข้อมูลเชิงตรรกะ  (Logical  Data  Independence)
2. ความเป็นอิสระในเชิงกายภาพ  (Physical Data  Independence) 


รูปแบบของฐานข้อมูล

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

เค้าร่างของฐานข้อมูลเชิงลำดับขั้น  (Hierarchical  Database  Schema)  
1. ประกอบด้วย  3  เรคคอร์ด  คือ  แผนก  พนักงาน  และโครงการ
2. ประกอบด้วยความสัมพันธ์แบบ PCR 2 ประเภท คือ ความสัมพันธ์ของข้อมูลแผนกกับพนักงาน และความสัมพันธ์ของข้อมูลแผนกกับโครงการ โดยที่มีแผนกเป็นเรคคอร์ด พ่อ แม่ และพนักงานกับโครงการเป็นเรคคอร์ดประเภทลูก 
ฐานข้อมูลแบบเครือข่ายงาน
โครงสร้างของข่ายงานประกอบด้วยประเภทของเรคคอร์ด  และกลุ่มของข้อมูลของเรคคอร์ดนั้น ๆ เช่นเดียวกับโครงสร้างของฐานข้อมูลเชิงสัมพันธ์และเชิงลำดับชั้น ความสัมพันธ์ระหว่างประเภทของเรคคอร์ดในฐานข้อมูล  เรียกว่า Set  Type  ซึ่งสามารถแสดงในแผนภูมิที่เรียกว่า  Bachman  diagram  อันมีองค์ประกอบดังนี้
1. ชื่อของ  Set  Type
2. ชื่อของประเภทของเรคคอร์ดหลัก
3. ชื่อของเรคคอร์ดที่เป็นสมาชิก

จากรูปประกอบด้วย  Set  type  ที่ชื่อว่า  วิชาเอก  โดยมีแผนกเป็นเรคคอร์ดหลัก  และมีนักศึกษาเป็นเรคคอร์ดสมาชิก  โดยมีความสัมพันะแบบ  1  :  N