วันพฤหัสบดีที่ 30 สิงหาคม พ.ศ. 2561

ER Diagram(อีอาร์ ไดอะแกรม) คืออะไร แบบจำลองโครงสร้างฐานข้อมูล


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

        ER Diagram: Entity-Relationship Diagram (อีอาร์ ไดอะแกรม: เอนทิตี้ รีเลชั่น ไดอะแกรม)  คือแบบจำลองที่อธิบายโครงสร้างฐานข้อมูล ซึ่งเขียนออกมาในลักษณะรูปภาพ และ การอธิบายโครงสร้างและความสัมพันธ์ของข้อมูล
1.  Entity(เอนทิตี้) เป็นวัตถุ หรือสิ่งของที่เราสนใจในระบบงานนั้น ๆ
2   Attribute(แอตทริบิ้ว) เป็นคุณสมบัติของวัตถุ
3  Relationships ความสัมพันธ์ระหว่างเอนทิตี้

        ER Diagram(อีอาร์ ไดอะแกรม) เป็นการออกแบบโครงสร้างฐานข้อมูลเพื่อ ให้นักวิเคราะห์ระบบ และ นักพัฒนาระบบเข้าใจตรงกันไปในทิศทางเดียวกัน เพื่อจะได้นำไปพัฒนาโครงสร้างข้อมูลของระบบไ้ด้อย่างมีประสิทธิภาพ
ER Diagram(อีอาร์ ไดอะแกรม) คืออะไร แบบจำลองโครงสร้างฐานข้อมูล

วันพุธที่ 29 สิงหาคม พ.ศ. 2561

แผนภาพกระแสข้อมูล (Data Flow Diagram) : DFD

Data Flow Diagrams(ดาต้าโฟลว์ ไดอะแกรม) คืออะไร แผนภาพแสดงการไหลของข้อมูล



Data Flow Diagrams(ดาต้าโฟลว์ ไดอะแกรม)

Data Flow Diagrams(ดาต้าโฟลว์ ไดอะแกรม)
        การพัฒนาระบบในปัจจุบันนั้นจำเป็นต้องมีการออกแบบระบบต่างๆ ก่อนจะนำไปพัฒนาจริง ไม่ว่า จะเป็น Er-diagram(อีอาไดอะแกรม), Data Dictionary(ดาต้า ดิกชินนารี่) ซึ่งการพัฒนาส่วนใหญ่นั้นจะมีการไหลเวียนของข้อมูลอยู่ตลอด จึงจำเป็นจะต้องทำแผนภาพแสดงการไหลของข้อมูลของDatabase(ดาต้าเบส) SQL(เอสคิวแอล) โดยอย่างละเอียด ก่อนไปพัฒนาระบบจริง โดยได้มีการนำ Data Flow Diagrams(ดาต้าโฟลว์ ไดอะแกรม ไปใช้สร้างแผนภาพการไหลของข้อมูล

        Data Flow Diagrams(ดาต้าโฟลว์ ไดอะแกรม) คือ เป็นเครื่องมือที่ใช้กันอย่างแพร่หลายในการเขียนแบบระบบใหม่ ในการเขียนแผนภาพจำลองการทำงานของกระบวนการ Process(โปรโซส) ต่าง ๆ ในระบบ และเป็นแผนภาพแสดงการไหลของข้อมูลจากแหล่งข้อมูลภายนอกเข้ามาในระบบ เพื่อแสดงวิธีการไหลของข้อมูลจากกระบวนการหนึ่งไปอีกกระบวนการหนึ่ง

        Data Flow Diagrams(ดาต้าโฟลว์ ไดอะแกรม) จะช่วยแสดงแผนภาพการทำงานของโปรแกรมที่เข้าในระบบ ว่าข้อมูลจากไหนไปไหน เก็บข้อมูลไว้ที่ไหน และมีอะไรเกิดขึ้นกับข้อมูลระหว่างการส่งข้อมูลบ้าง ซึ่งปัจจุบันผู้พัฒนาระบบส่วนใหญ่ได้ใช้ Data Flow Diagrams(ดาต้าโฟลว์ ไดอะแกรม) ก่อนพัฒนาระบบจริง



References ดาต้าโฟลว์. "การวิเคราะห์ระบบ(2)". [ออนไลน์]. เข้าถึงได้จาก:macare.net. [11 ต.ค 2017].

References ดาต้าโฟลว์. "ดีเอฟดี (DFD = Data Flow Diagrams) คืออะไร". [ออนไลน์]. เข้าถึงได้จาก:thaiall.com. [11 ต.ค 2017].

ภาพประกอบจาก: upload.wikimedia.org

วันอังคารที่ 21 ธันวาคม พ.ศ. 2553

DDL : Data Definiton Language

DDL : Data Definiton Language
                ภาษานิยามข้อมูล หรือ DDL ใน SQL จะประกอบด้วยกลุ่มคำสั่งต่างๆ  ต่อไปนี้
                CREATE คำสั่งที่ใช้ในการสร้างตาราง
-        CREATE TABLE สร้างตาราง
-        CREATE INDEX สร้างดัชนี
-        CREATE VIEW สร้าง วิว

การสร้างตาราง โดยการใช้คำสั่ง CREATE
                CREATE TABLE ชื่อตาราง (
             ชื่อฟิลด์  ชนิดของฟิลด์ [NULL | NOT NULL]);
                ตัวอย่าง
                                CREATE TABLE  state (
             sid                INT(5)                     NOT NULL,
             state_name  VARCHAR(20)        NOT NULL );
การสร้างดัชนี  CREATE INDEX รูปแบบดังนี้
                CREATE [UNIQUE]  INDEX  ชื่อดัชนี ON ชื่อตาราง (ชื่อฟิลด์);
                ตัวอย่างดังนี้
                CREATE UNIQUE INDEX sid_ind ON state (sid);

การสร้างวิว CREATE VIEW  
เป็นการสร้างตาราง สมมติ ขึ้นมาให้กับผู้ใช้งานบางกลุ่ม เพื่อต้องให้ผู้ใช้งานเหล่านั้นสามารถเรียกข้อมูลที่ต้องการจากวิวที่กำหนดให้เท่านั้น รูปแบบดังนี้
CREATE VIEW ชื่อตารางสมมุติ AS SELECT ฟิลด์,..... FROM  ชื่อตาราง ;

ตัวอย่างดังนี้
CREATE VIEW STATE2 AS SELECT state_nae FROM state;

                DROP คำสั่งที่ใช้ในการลบ
-        DROP TABLE คำสั่ง ลบ ตาราง
-        DROP INDEX  คำสั่ง ดัชนี
-        DROP VIEW    คำสั่ง ลบวิว
การลบตาราง โดยใช้คำสั่ง DROP TABLE
                DROP  TABLE ชื่อตาราง;

การลบดัชนี
                DROP INDEX ชื่อดัชนี;

วันจันทร์ที่ 13 ธันวาคม พ.ศ. 2553

ประเภทของคำสั่งภาษา SQL

กลุ่มคำสั่งของภาษา SQL มีหลายประเภทด้วยกัน ซึ่งมีการจัดประเภทคำสั่ง อยู่ 3 ประเภทด้วยกันดังนี้
-          ภาษนิยามข้อมูล (Data Definition Language : DDL) คือ กลุ่มคำสั่งที่ใช้ในการสร้างฐานข้อมูล การกำหนดโครงสร้างข้อมูลว่ามีคอลัมน์หรือ แอตตริบิวต์ใด ชนิดของข้อมูลเป็นประเภทใด รวมไปถึงการ เพิ่ม แก้ไข ลบ แอตตริบิวต์ต่างๆ ในรีเลชั่นนั้นๆ
-          ภาษาจัดการข้อมูล (Data Manipulation Language : DML) เป็นกลุ่มคำสั่งที่ถือเป็นแกนสำคัญของภาษา SQL โดยกลุ่มคำสั่งเหล่านี้นั้นใช้ในการอัพเดต, เพิ่ม, ปรับปรุง, และการคิวรีข้อมูลในฐานข้อมูล เป็นชุดคำสั่งแบบ Interactive SQL หรือ Embedded SQL
-          ภาษาควบคุมข้อมูล (Data Control Language : DCL) เป็นกลุ่มคำสั่งที่ช่วยให้ผู้บริหารข้อมูลหรือที่เรียกว่า DBA นั้น สามารถทำการควบคุมฐานข้อมูลเพื่อกำหนดสิทธิการอนุญาต หรือ ทำการยกเลิก การเข้าถึงฐานข้อมูล ซึ่งเป็นกระบวนการป้องกันความปลอดภัยในฐานข้อมูลและการจัดการทรานแซกชัน (Transaction Management)

วันพุธที่ 8 ธันวาคม พ.ศ. 2553

ประวัติและความเป็นมาของภาษา SQL

SQL ย่อมาจาก Structured English Query Language หรือ SEQUEL จนได้มีการปรับปรุงเวอร์ชันเป็น SEQUEL/ 2 เมื่อปี ค.ศ. 1976 และต่อมาก็ได้เปลี่ยนชื่อมาเป็น SQL เนื่องจากคำย่อเดิมนั้นไปซ้ำกับผลิตภัณฑ์อื่นที่มีอยู่ก่อนหน้านี้แล้ว
                SQL จัดเป็นภาษามาตราฐานของระบบฐานข้อมูลเชิงสัมพันธ์ เป็นภาษาที่สามารถใช้งานได้ในคอมพิวเตอร์หลายระดับ เช่น ระดับแมนเฟรมคอมพิวเตอร์ จนไปถึง ระดับไมโครคอมพิวเตอร์ จึงทำให้ผลิตภัณฑ์ซอฟต์แวร์ระบบการจัดการฐานข้อมูล ล้วนแต่สนับสนุนชุดคำสั่ง SQL แทบทั้งหมด
                หลังจากนั้น ปี ค.ศ. 1970 ระบฐานข้อมูล ORACLE ถูกพัฒนาโดยพัฒนา ORACLE CORPORATION และถือเป็นก้าวแรกในเชิงพาณิชย์สำหรับการพัฒนาระบบ การจัดการฐานข้อมูลเชิงสัมพันธ์ (RDBMS) ที่ตั้งอยู่บนพื้นฐานของ SQL และต่อมาก็มีผลิตภัณฑ์อื่นๆ พัฒนาตามมา เช่น INGRESS 
                ปี ค.ศ. 1982 ทาง American National Standards Institue (ANSI) ได้มีการคิดค้นมาตราฐานของชุดคำสั่ง SQL เพื่อสร้างชุดคำสั่งดังกล่าวให้อยู่ภายใต้มาตราฐเดียวกัน จึงทำให้ผลิตภัณฑ์ซอฟต์แวร์เพิ่มคุณสมบัติพิเศษเพิ่มเติมให้มีประสิทธิภาพยิ่งขึ้น ดั้งนั้น ชุดคำสั่งดังกล่าวยังคงตั้งอยู่บนพื้นฐานที่ทาง ANSI บัญญัติไว้ ปัจจุบันมีผลิตภัณฑ์ระบบการจัดการฐานข้อมูลต่างๆ มากมาย เช่น ORACLE, DB2, SYBASE, MS-SQL,MS-Access เป็นต้น