วันพฤหัสบดีที่ 7 เมษายน พ.ศ. 2565

ผลการเรียนรู้ครั้งที่10

 สรุป บทที่7

หัวใจหลักของ SQL คือ คิวรี (query) ที่ซึ่งจะครอบคลุมคำถามและการดำเนินการ เช่น รายการ สินค้าใดบ้างที่มีราคามากกว่า 100$ ที่ซึ่งถูกจัดเก็บในโกดังสินค้า? และรายการสินค้าเหล่านั้นมีจำนวนเท่าใด? พนักงานที่เริ่มทำงานกับบริษัทหลังจาก 1 January 2015 เป็นจำนวนเท่าใด? เป็นต้น

 คำสั่ง SQL ที่เกี่ยวกับ data definition ก่อนที่เราจะทำการศึกษาคำสั่ง SQL ส าหรับการสร้างและการ

กำหนดส่วนประกอบต่างๆของ ตารางข้อมูล ลองพิจารณาแบบจำลองข้อมูลในรูป  เพื่อใช้เป็นตัวอย่างประกอบด้วย 5 ตารางข้อมูล : CUSTOMER, INVOICE, LINE, PRODUCT และ VENDOR ที่ซึ่งจะสอดคล้องกับ กฎเกณฑ์ทางธุรกิจดังต่อไปนี้

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


การสร้างฐานข้อมูล

ก่อนที่เราจะประยุกต์ใช้ข้อมูลจาก RDBMS เราจะต้องดำเนินการสร้างโครงสร้างของฐานข้อมูล และ ทำการสร้างตารางข้อมูลที่ใช้ในการจัดเก็บข้อมูลของผู้ใช้

Database schema

Schema ภายใต้คำสั่ง SQL จะเป็นกลุ่มของตารางข้อมูลและดัชนีข้อมูลต่างๆในฐานข้อมูลที่ซึ่งจะ เป็นตารางข้อมูลและดัชนีของผู้ใช้หรือแอพพลิเคชันหนึ่งๆ โดยฐานข้อมูลหนึ่งๆอาจมีหลาย schema

ชนิดของข้อมูลในฐานข้อมูล

ในการเพิ่ม/กำหนดแอทริบิวต่างๆในตารางข้อมูลหนึ่งๆ เราจะต้องทำการกำหนดชนิดของข้อมูล สำหรับแอทริบิวหนึ่งๆที่มีชนิดของข้อมูลดังนี้

ข้อมูลเชิงตัวเลข

ข้อมูลเชิงข้อความหรือตัวอักษร

ข้อมูลวันที่

นอกเหนือจากชนิดของข้อมูลข้างต้นแล้ว SQL ยังมีชนิดข้อมูลอีกเป็นจ านวนมาก เช่น TIME, TIMESTAMP, REAL, DOUBLE, FLOAT และ INTERVAL ด้วย

การกำหนดโครงสร้างของตารางข้อมูล

CREATE TABLEtablename

  column1  data type  [constraint] , 

 column2   data type [constraint] ,

 … 

PRIMARY KEY (column1 

FOREIGN KEY (column1

 REFERENCFES tablename

CONSTRAINT constraint 

เพื่อที่จะทำให้คำสั่ง SQL สามารถอ่านได้ง่าย เราจะทำการกำหนด 1 แอทริบิวต่อ 1 บรรทัดที่ซึ่งจะทำให้เรา สามารถอ่านคำสั่งได้โดยง่าย

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

CREATE TABLE VENDOR (

V_CODE  INTEGER  NOT NULL  UNIQUE,

V_NAME  VARCHAR(35)  NOT NULL, 

ไม่มีความคิดเห็น:

แสดงความคิดเห็น