บทที่ 4

ภาษาฐานข้อมูล

ภาษาสอบถามเชิงโครงสร้าง
                ภาษาสอบถามเชิงโครงสร้าง  หรือภาษาเอสคิวเอล (Structured  Query  Lanuage  :  SQL)  ถูกพัฒนาขึ้นมาเป็นครั้งแรกโดยบริษัทไอบีเอ็ม  ประมาณต้นทศวรรษ  1970  และถูกนำมาใช้ในซอฟต์แวร์ด้านฐานข้อมูลของไอบีเอ็มรุ่นถัดมา  และใช้ในซอฟต์แวร์ของบริษัทอื่นๆ อีกหลายแห่งจนเป็นที่นิยมในปัจจุบัน
                ภาษาเอสคิวเอลเป็นภาษาที่ใช้ในการจัดการจัดข้อมูลของระบบฐานข้อมูลเชิงสัมพันธ์  มีผูผลิตระบบจัดการฐานข้อมูลจำนวนมากจัดเตรียมภาษาเอสคิวเอล  นี้ไว้ให้เราใช้  เช่น  DB2, ORACLE,  Access,  FoxPro,  dBase  IV  ซึ่งรูปแบบในรายละเอียดของภาษาเอสคิวเอล  ในระบบจัดการฐานข้อมูลแต่ละตัวอาจแตกต่างกันไปบ้าง  ทว่าส่วนใหญ่แล้วเหมือนกัน  นอกจากนั้นสถาบันมาตรฐานแห่งชาติอเมริกัน  (ANAI)  ได้กำหนดรูปแบบภาษาเอสคิวเอลมาตรฐาน  (International  Standard  Database  Language  SQL)  ขึ้นมาเพื่อให้เป็นมาตรฐานทั่วไปของภาษานี้  แต่มาตรฐานดังกล่าวยังไม่มีบริษัทใดสามารถพัฒนาขึ้นมาได้ครบถ้วนในตำราเล่มนี้จึงยึดรูปแบบภาษาเอสคิวเอล  ในโปรแกรม  SQL  Plus  ของบริษัทออราเคิล  ซึ่งเป็นผู้ผลิตระบบบริหารฐานข้อมูลที่ชื่อเสียงและเป็นที่ยอมรับกันทั่วโลกมาเป็นเวลายาวนาน
รูปแบบของภาษาสอบถามเชิงโครงสร้าง
                รูปแบบการใช้คำสั่งภาษาสอบถามเชิงโครงสร้าง  หรือภาษาเอสคิวเอล อาจมีได้ 2 รูปแบบ คือ
1.  ภาษาสอบถามเชิงโครงสร้างแบบโต้ตอบ  (Interactive  SQL)  เป็นการใช้คำสั่งภาษาเอสคิวเอล  โดยสั่งงานโดยตรงบนจอภาพเพื่อเรียกดูข้อมูลในขณะทำงานได้ทันที  เช่น  คำสั่งภาษาเอสคิวเอล  ที่ใช้ในโปรแกรม  SQL  Plus  ของระบบจัดการฐานข้อมูล  Oracle  หรือคำสั่งภาษาเอสคิวเอล  ใน  SQL  View  ของ  Microsoft  Access

                        SELECT  CITY

                        FROM  SUPPLIER

                        WHERE  SNO  =  ‘S2’;

                                                                                      

 

 

2.  ภาษาสอบถามเชิงโครงสร้างแบบฝังตัว  (Embedded  SQL)  อยู่ในภาษาเจ้าบ้าน 
(Home  Language)   เช่น  PL/1,Pascal, C++, Visual  BASIC,  Oracle  Developer  PL/SQL  เป็นต้นตัวอย่างการใช้คำสั่ง  SQL  ในภาษา  PL/1

                        EXEC  SQL  SELECT  CITY

                        INTO  :  XCITY

                        FROM  SUPPLIER

                        WHERE  SNO  =  ‘S2’:

                    

 

 

ตัวอย่างการใช้คำสั่ง  SQL  ในภาษา  Visual  BASIC

Private  Sub  Command 1 _ Click()
                        Dim  dbs  As  Database
                        Dim  rst  As  Recordset
                        Dim  strSQL  As  String
                        Set  dbs = OpenDatabase (“C:\VB60\Database.mdb”)
                        strSQL = “SELECT  CITY  FROM  SUPPLIER”
                        strSQL = strSQL & “WHERE  SNO = ‘S2’ ”
                        Set  rst = dbs.OpenRecordset(strSQL)
End  Sub

                     

 

 

 

ประเภทของคำสั่งในภาษาสอบถามเชิงโครงสร้าง
                ภาษาสอบถามเชิงโครงสร้าง  หรือภาษาเอสคิวเอล  มีคำสั่งมากมายซึ่งอาจแบ่งออกได้เป็น  2  ประเภท  คือ  คำสั่งนิยามข้อมูล  (Data  Definition  Statements)  และ  คำสั่งจัดดำเนินการข้อมูล  (Data  Manipulation  Statements)
คำสั่งที่ใช้นิยามข้อมูล
                ได้แก่  คำสั่ง  CREATE  TABLE,  ALTER  TABLE,  DROP  TABLE,  CREATE  INDEX,  DROP  INDEX,  CREATE  VIEW,  DROP  VIEW  ซึ่งมีรายละเอียดของคำสั่งพร้อมตัวอย่างการใช้  ดังต่อไปนี้
                1.  CREATE  TABLE  เป็นคำสั่งที่ใช้ในการสร้างตาราง  โดยบอกชื่อตาราง  ชื่แอตทริบิวต์ต่าง ๆ  ความกว้างของแต่ละแอตทริบิวต์  ประเภท  (Type)  ของข้อมูลที่จัดเก็บในแอตทริบิวต์นั้น  รวมทั้งการกำหนดคีย์หลัก  (Primary  Key)  และคีย์นอก  (Foreign  Key)  มีรูปแบบดังนี้

 

                CREATE  TABLE <TABLE  NAME>

                        (<COLUMN  NAME><DATA  TYPE>[<WIDTH>]

                        [,<COLUMN  NAME><DATA  TYPE>[<WIDTH>,…]

                        [,PRIMARY  KEY  DEFINITION]

                        [,FOREIGN  KEY  DEFINITION]);

  

 

 

 

 


รูปแบบข้างต้นประกอบด้วยสัญลักษณ์ซึ่งมีความหมายตามตารางด้านล่างนี้


สัญลักษณ์

เรียกว่า

ความหมาย

ตัวพิมพ์ใหญ่

Capital  Letters

คำสั่ง

< >

Variables

ชื่อต่าง ๆ หรือนิพจน์ที่ผู้ใช้จะต้องกำหนดค่าขึ้นมา

...

Ellipses

สามารถจะระบุเพิ่มอีกตามสิ่งที่ระบุมาแล้วข้างต้น

[ ]

Optional

คำสั่งนั้น ๆ จะมีสิ่งที่ระบุไว้ในเครื่องหมายนี้หรือไม่ก็ได้

::=

Equal

ส่วนที่อยู่ด้านขวาของเครื่องหมายนี้  เป็นคำอธิบายหรือคำนิยามของสิ่งที่อยู่ด้านซ้ายของเครื่องหมายนี้

|

Or

อาจจะเลือกใช้สิ่งใดสิ่งหนึ่งที่อยู่ด้านซ้าย  หรือด้านขวาของต้นไม้นี้ได้

COLUMN
NAME

 

ชื่อของแอตทริบิวต์ของตาราง

WIDTH

 

ขนาดความกว้างของข้อมูล

DATA  TYPE

 

ประเภทค่าของข้อมูล  ซึ่งอาจเป็นได้ดังตารางต่อไปนี้

 

นอกจากนั้นยังมีตัวแปรที่ใช้กำหนดโครงสร้างข้อมูล  ดังตารางต่อไปนี้


ประเภทข้อมูล

ความหมาย

SMALLINT

เลขจำนวนเต็ม  ค่าระหว่าง  -99999  ถึง  99999

INTEGER

เลขจำนวนเต็ม  ความกว้าง  ประมาณ  ลบ  10  หลัก  ถึงบวก  11  หลัก

NUMBER  (X,Y)

เก็บจำนวนตัวเลขที่มีความกว้างรวม  X  หลัก  และมีทศนิยม  Y  ตำแหน่ง

FLOAT  (X,Y)

เก็บจำนวนตัวเลขที่เขียนในรูปของ  10  ยกกำลัง

CHAR  (N)

เก็บสายอักขระที่มีขนาดคงที่ตามที่ระบุ

VARCHER  (M)

เก็บสายอักขระที่มีขนาดไม่คงที่

DATE

เก็บ  เดือน/วัน/ปี

LOGICAL

เก็บค่าตรรกะ  คือ  จริง  (T  หรือ  True)  หรือเท็จ  (F  หรือ  False)

เช่น

                CREATE  TABLE  EMPLOYEE

                        (EMPNUM  CHER  (4),

                        EMPNAME  CHAR  (15),

                        HIREDATE  DATE,

                        SALARY  NUMBER  (6),

                        POSITION  CHAR  (10),

                        DEPTNO  CHAR  (2)

                        PRIMARY  KEY  (EMPNUM)

                        FOREIGN  KEY  (DEPTNO)  REFERENCES  DEPT  (DEPTNO));

                                      

 

 

 

 

 

 

 

2.  ALTER  TABLE  ใช้ในการเพิ่มแอตทริบิวต์ในตารางที่มีอยู่เดิม  มีรูปแบบดังนี้

           
            ALTER  TABLE  <TABLE  NAME>

            ADD  (<COLUMN  NAME>  <DATA  TYPE>  <WIDTH>  [,<COLUMN
 
NAME>  <DATA  TYPE>  <WIDTH>, …])

                           

 

 

เช่น

               
                ALTER  TABLE  PRODUCT

            ADD  (COLOR  CHAR (6),

            WEIGHT  NUMBER (3));

                 

 

 

3.  DROP  TABLE  ใช้ในการลบตารางที่มีอยู่เดิม  มีรูปแบบดังนี้

            DROP  TABLE  <TABLE  NAME>

                    

 

4.  CREATE  INDEX  ใช้ในการสร้างดัชนี  มีรูปแบบดังนี้

            CREATE  [UNIQUE]  INDEX  <INDEX  NAME>
           
            ON  <TABLE  NAME>  (<COLUMN  NAME  [,COLUMN  NAME]);

            

 

 

เช่น

                CREATE  INDEX  QTYNDX

            ON  ORDER  (QTY);

                   

 

 

5.  DROP  INDEX  ใช้ในการลบดัชนี  มีรูปแบบดังนี้

                                DROP  INDEX  <INDEX  NAME>;

            

 

6.  CREATE  VIEW  ใช้ในการสร้างวิว  (มุมมอง)  ข้อมูลนี้มาจากตารางที่มีอยู่เดิม  มีรูปแบบดังนี้

                                CREATE  VIEW  <VIEW  NAME>

                        AS  SELECT  Statement;

                 

 

เช่น

           
            CREATE  VIEW  ORDERVIEW

            AS  SELECT  SNO, PNO, QTY

            FROM  ORDER

            WHERE  QTY > 200;

                            

 

 

 

7.  DROP  VIEW  ใช้ในการลบวิว  มีรูปแบบดังนี้

                DROP  VIEW <VIEW  NAME>

           

 

คำสั่งที่ใช้จัดดำเนินการข้อมูล  (Data  Manipulation  Statements)
                ได้แก่  คำสั่ง  INSERT, UPDATE, DELETE, SELECT  และฟังก์ชั่นต่าง ๆ
                1.  INSERT  เป็นคำสั่งที่ใช้ในการใส่ข้อมูลระเบียนหนึ่งหรือทูเพิลลงในตารางที่มีอยู่แล้ว

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

           
            INSERT  INTO <TABLE  NAME>

            [<COLUMN  LIST>]  VALUES  (<VALUE  LIST>);

            

 

 

COLUMN  LIST หมายถึง  รายชื่อแอตทริบิวต์ที่ต้องการเพิ่มข้อมูลลงไป  ถ้ามีมากกว่า  1                                   ให้ใช้เครื่องหมาย  ,  คั่น
VALUE  LIST                     หมายถึง  ค่าข้อมูลของแอตทริบิวต์ที่ต้องการเพิ่มเข้าไปในตาราง  ถ้าเป็นข้อมูลอักขระต้องมีเครื่องหมาย  ‘  ’  กำกับ
เช่น

                INSERT  INTO  PRODUCT  (PNO, PNAME, COLOR, CITY)

            VALUES  (‘P1’, ‘PEN’, ‘RED’, ‘BANGKOK’);

                

 

 

2.  UPDATE  เป็นคำสั่งที่ใช้ในการเปลี่ยนแปลงค่าของข้อมูลที่มีอยู่แต่เดิมในบางแอตทริบิวต์เพื่อให้เป็นไปตามที่เราต้องการ  มีรูปแบบดังนี้

                UPDATE  <TABLE  NAME>

            SET  <COLUMN  NAME 1> = <VALUE 1>

            [,<COLUMN  NAME 2> = <VALUE 2>

            …, <COLUMN  NAME  N> = <VALUE  N>]

            [WHERE < CONDITIONS>];

          

 

 

 

COLUMN  NAME             หมายถึง  ชื่อแอตทริบิวต์ที่ต้องการเปลี่ยนค่าของข้อมูลใหม่
VALUE                                 หมายถึง  ค่าใหม่ของข้อมูลที่ต้องการเปลี่ยนเข้าไปในตาราง  ถ้าเป็นข้อมูลอักขระต้องมีเครื่องหมาย  ‘ ’  กำกับ
CONDITION                      หมายถึง  เงื่อนไขของข้อมูลที่จะนำมาปรับปรุง
เช่น

                UPDATE  PRODUCT

            SET  COLOR = ‘YELLOW’

                        WHERE  PNO = ‘P2’

           

 

 

 

3.  DELETE  เป็นคำสั่งที่ใช้ในการลบข้อมูลในแต่ระเบียนหรือทูเพิล  มีรูปแบบดังนี้

                DELETE  FROM  <TABLE  NAME>

            [WHERE  <CONDITIONS>];

         

 

 

เช่น

            DELETE  FROM  SUPPLIER

            WHERE  SNO = ‘S2’;

       

 

 

4.  SELECT  เป็นคำสั่งที่ใช้ในการเรียกค้นข้อมูลจากฐานข้อมูลตามที่ผู้ใช้ต้องการ มีรูปแบบดังนี้

                SELECT  [ * | DISTINCT]  <TARGET  LIST>

            FROM  <TABLE  NAME> | <ALIASES>]

            [WHERE  PREDICATE]

            [GROUP  BY  <COLUMN  LIST>] | [HAVING  PREDICATE]

            [ORDER  BY  <COLUMN  LIST>];

         

 

 

 

 

รูปแบบข้างต้นประกอบด้วยสัญลักษณ์ซึ่งมีความหมายตามตารางด้านล่างนี้


สัญลักษณ์

ความหมาย

*

เป็นการเลือกข้อมูลทั้งหมด

DISTINCT

เลือกข้อมูลที่เป็นไปตามเงื่อนไขเฉพาะทูเพิลที่มีข้อมูลไม่ซ้ำกัน

TARGET  LIST

ชื่อของแอตทริบิวต์และนิพจน์ที่ต้องการให้แสดงค่าออกมาตามต้องการ

ALLASES

ชื่อของตารางที่ตั้งขึ้นใหม่  (นามแฝง)

PREDICATE

เงื่อนไขในการดึงข้อมูลของทูเพิลตามที่ต้องการ

[GROUP  BY  <COLUMN  LIST>]  [HAVING  PREDICATE]

จัดกลุ่มตามเงื่อนไขที่ระบุและภายใต้การจัดกลุ่มจะมีเงื่อนไขที่จะให้แสดงผลที่เกิดจากการจัดกลุ่มโดย  HAVING

[ORDER  BY  <COLUMN  LIST>]

ระบุให้เรียงลำดับข้อมูลตามแอตทริบิวต์ที่ต้องการถ้ามี  ASC  ต่อท้ายชื่อแอตทริบิวต์เป็นการเรียงจากน้อยไปมาก  ถ้ามี  DESC  ต่อท้ายชื่อแอตทริบิวต์เป็นการเรียงจากมากไปน้อย

เช่น
*  การเรียกดูแบบไม่มีเงื่อนไข

            SELECT *

            FROM  SUPPLIER

              

 

*  การเรียกดูแบบมีเงื่อนไข

                SELECT  SNO

            FROM  SUPPLIER

            WHERE  CITY = ‘RAYONG’  OR  ‘BANGKOK’;

          

 

 

            SELECT  SNO, PNO, QTY

            FROM  ORDER

            WHERE  QTY  BETWEEN  300  AND  500;

                

 

 

*  การเรียกดูแบบมีเงื่อนไข  โดยใช้ตัวดำเนินการ  BETWEEEN … AND …  

             
            SELECT  SNO, PNO, QTY

            FROM  SP

            WHERE  QTY  BETWEEN  300  AND  500;            

 

         

 

 

*  การเรียกดูแบบมีเงื่อนไข  โดยใช้ตัวดำเนินการ  IN

            SELECT  SNO,SNAME

            FROM  S

            WHERE  CITY  IN  (‘LONDON’, ‘PARE’);

     

 

 

*  การเรียกดูแบบมีเงื่อนไข  โดยใช้ตัวดำเนินการ  LIKE

            SELECT *

            FROM  S

            WHERE  SNAME  LIKE ‘B%’;

        

 

 

ผลลัพธ์  คือ
                S                             SNO                 SNAME                                TATUS                 CITY
                                                S3                           Blake                                      30                           Paris
*  การเรียกดูข้อมูลจากหลายตาราง  โดยการทำ  Equi  Join

            SELECT  SUPPLIER. * , PRODUCT. *

            FROM  S  SUPPLIER, P PRODUCT

            WHERE  SUPPLIER.CITY = PRODUCT.CITY;

       

 

 

 

*  การเรียกดูข้อมูลจากหลายตาราง  โดยการทำ  Non-Equi  Join  (>,<, >=, <=,  between … and, in)

            SELECT  SNO, SNAME, PNO, QTY

            FROM  S  SUPPLIER, SP  SHIPMENT

            WHERE  QTY  BETWEEN  400  AND  500

                        AND  SUPPLIER,SNO = SHIPMENT.SNO;

         

 

 

*  การเรียกดูข้อมูลจากหลายตาราง  โดยการทำ  Self  Join

            SELECT  S1.,SNO, S2.SNO

            FROM  S  S1, S  S2

            WHERE  S1.CITY = S2.CITY

                        AND  S1.SNO <> S2.SNO;

       

 

 

 

*  การเรียกดูข้อมูลจากหลายตาราง  โดยการทำ  Outer  Join  เพื่อแสดงข้อมูลที่ไม่เป็นไปตามเงื่อนไขออกมาด้วย  เครื่องหมายที่ใช้คือ  (+)

          SELECT  SNO, SNAME, PNO, QTY

            FROM  S  SUPPLIER, SP  SHIPMENT

            WHERE  SUPPLIER  SNO  (+)=  SHIPMENT.SNO;

      

5.  ฟังก์ชั่นต่าง ๆ เป็นคำสั่งสำเร็จรูปที่  SQL  เตรียมไว้ให้  มีหลายกลุ่ม  เช่น
                *ฟังก์ชั่นเกี่ยวกับการรวม


ฟังก์ชั่น

หน้าที่

AVG [*|DISTINCT] <column  name>
หรือ  AVG [*|DISTINCT] <column  expression>

ใช้หาค่าเฉลี่ยของค่าในแอตทริบิวต์  ประเภทตัวเลข

COUNT [*|DISTINCT] <column  name>

ใช้นับจำนวนแถว

MAX [*|DISTINCT] <column  name>
หรือ MAX [*|DISTINCT] <column  expression>

ใช้หาค่าสูงสุดของค่าในแอตทริบิวต์ที่กำหนด

MIN [*|DISTINCT] <column  name>
หรือ  MIN [*|DISTINCT] <column  expression>

ใช้หาค่าต่ำสุดของค่าในแอตทริบิวต์ที่กำหนด

SUM [*|DISTINCT] <column  name>
หรือ  SUM [*|DISTINCT] <column  expression>

ใช้หาผลรวมของค่าในแอตทริบิวต์  ประเภทตัวเลข

 

*  ฟังก์ชั่นเกี่ยวกับอักขระ


ฟังก์ชั่น

หน้าที่

LENGTH <column  name>

ใช้หาความยาวของสายอักขระ

SUBSTR  (string, starting  character, number  of  characters)

ใช้แยกสายอักขระย่อยออกมาจากสายอักขระเดิม

REPLACE (string, existing_string, [replacement_string])

ใช้แทนที่สายอักขระเดิมด้วย
Replacement_string

LTRIM <column  Name>
และ  RTRIM <column  name>

ใช้ตัดช่องว่างด้านซ้ายหรือด้านขวาของสายอักขระ

LPAD (string, n, pad_string)
และ  LPAD (string, n, pad_string)

ใช้เพิ่มสายอักขระที่ด้านซ้ายหรือด้านขวาของสายอักขระเดิม

INITCAP <column  name>
และ  LOWER <column  name>
และ  UPPER <column  name>

ใช้เปลี่ยนให้อักษรตัวแรกเป็นตัวใหญ่
ใช้เปลี่ยนให้อักษรทุกตัวเป็นตัวเล็ก
ใช้เปลี่ยนให้อักษรทุกตัวเป็นตัวใหญ่

DECODE (expression, value1,returned_value1, …, valueN, returned_valueN,
[default_returned_value])

ใช้แปลงค่าสายอักขระให้เป็นตามที่ต้องการ

ACII <column  name>

ใช้แปลงตัวอักขระให้เป็นค่าตัวเลขตามรหัส
แอสกี

INSTR (string1, string2, [starting_position,
[occurrence_number]])

ใช้ตรวจหาสายอักขระ (string1)  ว่ามีแทรกอยู่ในสายอักขระอีสายหนึ่ง (string 2)  หรือไม่

*ฟังก์ชั่นเกี่ยวกับวันที่และเวลา


ฟังก์ชั่น

หน้าที่

TO_CHAR (date_value, date_format)

ใช้แปลงค่าวันที่ให้เป็นวันที่แบบมาตรฐาน  เช่น ‘MONTH  DD, YYYY’

TO_DATE (string_value, date_foumat)

ใช้แปลงสายอักขระให้เป็นค่าวันที่

TO_CHAR (order_date, ‘HH : MI : SS PM’)

ใช้แปลงค่าวันที่ให้เป็นชั่วโมงนาทีและวินาที

*ฟังก์ชั่นเกี่ยวกับตัวเลขและอักขระ


ฟังก์ชั่น

หน้าที่

TO_CHAR (number [, format])

ใช้แปลงค่าตัวเลขให้เป็นสายอักขระ

TO_NUMBER (string [, format])

ใช้แปลงสายอักขระให้เป็นค่าตัวเลข

ROUND (value, [scale])

ใช้ปัดเศษ

TRUNC (value, [scale])

ใช้ตัดเศษทิ้ง

FLOOR (value)

ใช้แปลงทศนิยมเป็นจำนวนเต็มค่าต่ำกว่าค่าเต็มไม่เกิน 1

CEIL (value)

ใช้แปลงทศนิยมเป็นจำนวนเต็มค่าสูงกว่าค่าเต็มไม่เกิน 1

NVL (column-value, substitute-value)

ใช้ตรวจค่าว่าในแอตทริบิวต์เป็นค่าว่างหรือไม่แล้แทนด้วย substitute-value

MOD (m , n)

หารเศษด้วย

SQRT (n)

หาค่ารากที่สอง

ABS (value)

หาค่าสัมบูรณ์

CHR (value)

แปลงค่าตัวเลขเป็นตัวอักขระตามรหัสแอสกี  ที่ตรงกับตัวเลขนั้น

คำสั่งเกี่ยวกับพจนานุกรมข้อมูลในภาษาสอบถามเชิงโครงสร้าง
                พจนานุกรมข้อมูล (Data  Dictionary)  เป็นที่เก็บข้อมูลรายละเอียด (Detailed  Information)  ซึ่งเรียกว่าเป็น  “ข้อมูลตัวอธิบาย”  (Descriptor  Information)  หรือ  “ข้อมูลเกี่ยวกับข้อมูล”  (Metadata)  เช่น


TABNAME

COLCOUNT

ROWCOUNT

…..

DEPT
EMP
……….

3
4
……….

3
4
……….

….

……

TABLE                 

 

 

 

TABNAME

COLNAME

…..

DEPT

DEPTNO

…..

DEPT

DNAME

….

DEPT

NUDGET

….

EMP

EMPNO

….

EMP

ENAME

….

EMP

DEPTNO

EMP

SALARY

….

……….

……….

……….

COLUMN
        

 

     

 

 

 

                สำหรับระบบบริหารฐานข้อมูลบางระบบ  เช่น  Oracle  ผู้บริหารฐานข้อมูลสามารถใช้คำสั่งเพื่อขอดูข้อมูลส่วนที่เป็นพจนานุกรมข้อมูล  โดยผ่านโปรแกรม  SQL  Plus  ได้ดังนี้
                คำสั่ง  DESC  TAB  เป็นคำสั่งในระบบแสดงรายชื่อตารางที่เก็บข้อมูล  Metadata  ของฐานข้อมูลปัจจุบัน
                คำสั่ง  SELECT * FROM  TAB  เป็นการขอใช้ระบบแสดงรายชื่อตารางทุกตารางที่ฐานข้อมูลผู้ใช้คนปัจจุบันสามารถาเข้าถึงได้
                คำสั่ง  DESC  <TABLE  NAME>  เป็นการขอใช้ระบบแสดงรายละเอียดเกี่ยวกับโครงสร้างของตารางที่ระบุชื่อว่าประกอบด้วยแอตทริบิวต์ชื่ออะไรบ้าง  เป็นข้อมูลชนิดใด  และมีความกว้างเท่าไร  เป็นต้น

 

 

นายธีระทัศน์ เสียงอ่อน
5039011012