วันอาทิตย์ที่ 14 ธันวาคม พ.ศ. 2557

SQL


     SQL (สามารถอ่านออกเสียงได้ 2 แบบ คือ “เอสคิวแอล” (SQL) หรือ “ซีเควล” (Sequel) ย่อมาจาก structured query language คือภาษาที่ใช้ในการเขียนโปรแกรม เพื่อจัดการกับฐานข้อมูลโดยเฉพาะ เป็นภาษามาตราฐานบนระบบฐานข้อมูลเชิงสัมพันธ์และเป็นระบบเปิด (open system) หมายถึงเราสามารถใช้คำสั่ง sql กับฐานข้อมูลชนิดใดก็ได้ และ คำสั่งงานเดียวกันเมื่อสั่งงานผ่าน  ระบบฐานข้อมูลที่แตกต่างกันจะได้ ผลลัพธ์เหมือนกัน ทำให้เราสามารถเลือกใช้ฐานข้อมูล ชนิดใดก็ได้โดยไม่ติดยึดกับฐานข้อมูลใดฐานข้อมูลหนึ่ง นอกจากนี้แล้ว SQL ยังเป็นชื่อโปรแกรมฐานข้อมูล ซึ่งโปรแกรม SQL เป็นโปรแกรมฐานข้อมูลที่มีโครงสร้างของภาษาที่เข้าใจง่าย ไม่ซับซ้อน มีประสิทธิภาพการทำงานสูง สามารถทำงานที่ซับซ้อนได้โดยใช้คำสั่งเพียงไม่กี่คำสั่ง โปรแกรม SQL จึงเหมาะที่จะใช้กับระบบฐานข้อมูลเชิงสัมพันธ์ และเป็นภาษาหนึ่ง ซึ่งแบ่งการทำงานได้เป็น 4 ประเภท ดังนี้

1. Select query ใช้สำหรับดึงข้อมูลที่ต้องการ
2. Update query ใช้สำหรับแก้ไขข้อมูล
3. Insert query ใช้สำหรับการเพิ่มข้อมูล
4. Delete query ใช้สำหรับลบข้อมูลออกไป
     ปัจจุบันมีซอฟต์แวร์ระบบจัดการฐานข้อมูล (DBMS ) ที่สนับสนุนการใช้คำสั่ง SQL เช่น  Oracle , DB2, MS-SQL, MS-Access 
นอกจากนี้ภาษา SQL ถูกนำมาใช้เขียนร่วมกับโปรแกรมภาษาต่างๆ เช่น ภาษา c/C++ , VisualBasic และ Java 

ประโยชน์ของภาษา SQL
1. สร้างฐานข้อมูลและ ตาราง    
2. สนับสนุนการจัดการฐานข้อมูล ซึ่งประกอบด้วย การเพิ่ม การปรับปรุง และการลบข้อมูล
3. สนับสนุนการเรียกใช้หรือ ค้นหาข้อมูล    
    
ประเภทของคำสั่งภาษา SQL
1. ภาษานิยามข้อมูล(Data Definition Language : DDL) เป็นคำสั่งที่ใช้ในการสร้างฐานข้อมูล กำหนดโครงสร้างข้อมูลว่ามี  Attribute ใด
 ชนิดของข้อมูล รวมทั้งการเปลี่ยนแปลงตาราง และการสร้างดัชนี คำสั่ง : CREATE,DROP,ALTER
2. ภาษาจัดการข้อมูล (Data Manipulation Language :DML) เป็นคำสั่งที่ใช้ในการเรียกใช้ เพิ่ม ลบ และเปลี่ยนแปลงข้อมูลในตาราง    คำสั่ง : SELECT,INSERT,UPDATE,DELETE
3. ภาษาควบคุมข้อมูล (Data Control Language : DCL) เป็นคำสั่งที่ใช้ในการกำหนดสิทธิการอนุญาติ หรือ ยกเลิก การเข้าถึงฐานข้อมูล เพื่อป้องกันความปลอดภัยของฐานข้อมูล คำสั่ง : GRANT,REVOKE


2. ชนิดของข้อมูล (Data Type)
                การใช้ชนิดข้อมูลได้อย่างถูกต้องในการสร้างฐานข้อมูลทำให้การจัดสรรการใช้เนื้อที่หน่วยความจำได้อย่างมีประสิทธิภาพ หน่วยความจำนี้รวมถึงฮาร์ดดิสก์ด้วย ดังนั้น เราควรจะทำความรู้จักชนิดข้อมูลที่ใช้ในฐานข้อมูล SQL Server ก็จะมีความคล้ายคลึงกับชนิดข้อมูลของผู้ผลิตรายอื่น ๆ เพราะใช้มาตรฐาน ANSI เป็นต้นแบบในการผลิตแอพพลิเคชันฐานข้อมูล ซึ่งแบ่งเป็นชนิดของข้อมูล ดังนี้


2.1 Character

ชนิดข้อมูล
ขอบเขตของชนิดข้อมูลขนาดหน่วยความจำ (ไบต์)
Char[(n)]1 - 8000n
Varchar[(n)]1 – 8000ความยาวข้อมูล
Text231-1(2,147,483,647) ตัวอักษร16+Multiple of 2k

2.2 Binary

ชนิดข้อมูล
ขอบเขตของชนิดข้อมูลขนาดหน่วยความจำ (ไบต์)
Binary(n)1 - 8000n
Varbinary(n)1 - 8000n + 1
Image231 -1(2,147,483,647) ไบต์16+Multiple of 2k
Timestampใช้สำหรับเปลี่ยนการจัดการ16

2.3 Date

ชนิดข้อมูล
ขอบเขตของชนิดข้อมูลขนาดหน่วยความจำ (ไบต์)
Datetimeวันที่เริ่มต้นตั้งแต่ January 1,1753 ถึง December 31,9999 ความละเอียดถึง 1/1000 วินาที8
Smalldetetimeวันที่เริ่มต้นตั้งแต่ January 1,1900 ถึง June 6,20794


2.4 Logical

ชนิดข้อมูล
ขอบเขตของชนิดข้อมูลขนาดหน่วยความจำ (ไบต์)
Bit0 หรือ 11

2.5 Numeric

ชนิดข้อมูล
ขอบเขตของชนิดข้อมูลขนาดหน่วยความจำ (ไบต์)
Int±2,147,483,6474
Smallint±327672
Tinyint0 2551
Float(p)
P (Precision) คือ การนับจำนวน รวมของเลขหน้าและหลังทศนิยม มีค่าตั้งแต่ 1 ถึง 28
S (Scale) คือ จำนวนตัวเลขหลัง ทศนิยม
±1.79E+3084 (Precision<16)
8(Precision>=16)
Double p±1.79E+3088
Real±1.79E+3084
Numeric(p,s)
Decimal(p,s)
±1032 ถึง 17
Money±$922,337,203,685,477.58078
Smallmoney±$214,748.36474

การเรียกดูข้อมูล

          การเรียกข้อมูลจากตารางสามารถทำได้หลายรูปแบบทั้งที่มีเงื่อนไข หรือแม้แต่การเรียกดูข้อมูลจากหลายตาราง


การเรียกดูข้อมูลทั้งตาราง

          รูปแบบของคำสั่ง SELECT  เพื่อใช้เรียกดูข้อมูลทุกคอลัมน์จากตารางใดตารางหนึ่ง
                   รูปแบบ                    Select   *
                                      FROM <table name>;
          ในการเรียกดูข้อมูลทั้งตาราง จะใช้เครื่องหมาย * เพื่อแทนการเรียกดูข้อมูลจากทุกคอลัมน์ของตาราง

 

การเรียกดูข้อมูลเพียงบางคอลัมน์

          รูปแบบคำสั่ง SELECT เพื่อใช้เรียกดูข้อมูลเพียงบางคอลัมน์จากตารางใดตารางหนึ่ง
                   รูปแบบ                    Select   <column 1 , column 2,…>
                                      FROM <table name>;
          ในการเรียกดูข้อมูลเพียงบางคอลัมน์ จำเป็นต้องระบุชื่อคอลัมน์ให้ถูกต้อง ตามที่ระบุไว้ในโครงสร้าง และหากเรียกดูมากกว่าหนึ่งคอลัมน์ จะต้องมีเครื่องหมาย , คั่นระหว่างชื่อคอลัมน์

การเรียกดูข้อมูลโดยไม่ให้แสดงข้อมูลซ้ำกัน

          เมื่อต้องการดูข้อมูลจากตารางโดยไม่ให้แสดงข้อมูลที่ซ้ำซ้อนออกมา จะใช้คำว่า DISTINCT กำกับ หลังคำว่า SELECT

 

การเรียกดูข้อมูลโดยแสดงผลข้อมูลของคอลัมน์เป็นนิพจน์ทางคณิตศาสตร์

          ในบางครั้งการเรียกดูข้อมูลของบางคอลัมน์ (Column list) อาจจะต้องทำการคำนวณประกอบก่อน เพื่อแสดงผลข้อมูลออกมา

 

การเรียกดูข้อมูลโดยการจัดเรียงข้อมูล

          ข้อมูลที่ถูกเรียกสามารถถูกจัดเรียงตามคอลัมน์ที่ต้องการ เช่นให้เรียงชื่อตามตัวอักษร หรือให้เรียงข้อมูลตามเงินเดือน เป็นต้น ในการจัดเรียงข้อมูลอาจจะเรียงจากน้อยไปหามาก (Ascending) หรือจากมากไปหาน้อย (Descending)




          รูปแบบคำสั่งที่ใช้แสดงผลลัพธ์โดยการจัดเรียงข้อมูล คือ
                   รูปแบบ           SELECT [*| DISTINCT] <column 1, …>
                                      FROM <table name>
                                      [ORDER BY <column 1,…>][ASC][DESC]];
 
การเรียกดูข้อมูลแบบมีเงื่อนไข
          การเรียกดูข้อมูลแบบมีเงื่อนไข เป็นการระบุค่าเฉพาะของข้อมูลที่ต้องการเรียกดู อาจจะใช้เงื่อนไขเพื่อดึงข้อมูลบางแถวจากตาราง เช่น
          การเรียกดูข้อมูลแบบมีเงื่อนไข จะใช้วลีหรืออนุประโยค WHERE ต่อท้ายวลีหรืออนุประโยค FROM รูปแบบของคำสั่งเป็นดังนี้
                   รูปแบบ           SELECT [ * | DISTINCT] <column 1, column 2, …>
                                       FROM <table name>
                                       [WHERE <CONDITION>];
          ในอนุประโยค WHERE ประกอบด้วยส่วนสำคัญ 3 ส่วน คือ
1.    ชื่อคอลัมน์
2.    โอเปอเรเตอร์การเปรียบเทียบ ซึ่งแบ่งออกเป็นโอเปอเรเตอร์ทางตรรกะ (Logical Operator) โอเปอเรเตอร์ SQL รวมถึงการใช้โอเปอเรเตอร์บูลีน
3.    ข้อมูลเฉพาะที่ต้องการเป็นเงื่อนไขของชื่อคอลัมน์ที่ระบุในข้อ 1 อาจเป็นค่าคงที่ (Constant) กลุ่มของข้อมูลหรือนิพจน์ (Expression) หรือชื่อคอลัมน์อื่นที่ต้องการนำมาเปรียบเทียบข้อมูลเฉพาะที่เป็นประเภทตัวอักษรหรือวัน เดือน ปี (DATE)  เมื่อนำมาเป็นเงื่อนไขเฉพาะจะต้องมีเครื่องหมาย ‘ ‘ กำกับ
การเรียกดูข้อมูลแบบมีเงื่อนไข โดยใช้โอเปอเรเตอร์ของ SQL
     โอเปอเรเตอร์ของ SQL ที่ใช้ในการกำหนดเงื่อนไขของข้อมูลในอนุประโยค WHERE มีดังต่อไปนี้
1.    BETWEEN … AND …      เป็นโอเปอเรเตอร์ที่กำหนดเงื่อนไขของคอลัมน์เป็นค่าระหว่างค่าสองค่า การใช้ BETWEEN … AND …นี้  จะแสดงต่อท้ายชื่อคอลัมน์ที่ถูกระบุให้เป็นเงื่อนไข
2.    IN  เป็นโอเปอเรเตอร์ที่ใช้กับเงื่อนไขของคอลัมน์ที่ต้องการระบุเงื่อนไขเป็นกลุ่มของข้อมูล โดย IN จะแสดงต่อท้ายชื่อคอลัมน์ที่ถูกระบุเป็นเงื่อนไข และกลุ่มของข้อมูลที่เป็นข้อมูลเฉพาะของคอลัมน์ที่เป็นเงื่อนไขนี้ จะระบุอยู่ในวงเล็บ และมีเครื่องหมาย , คั่น
3.  LIKE  เป็นโอเปอเรเตอร์ที่ใช้ในการค้นหาข้อมูลของคอลัมน์ที่เก็บข้อมูลประเภทตัวอักษรเท่านั้น โดยยังไม่ทราบค่าที่แน่นอนทั้งหมดของข้อมูลที่จะค้นหา หรือรู้เพียงบางตัวอักษรเท่านั้นโอเปอเรเตอร์ LIKE จะระบุต่อท้ายชื่อคอลัมน์ที่เป็นเงื่อนไขโดยจะใช้สัญญลักษณ์ที่ช่วยในการค้นหาข้อมูลคือ * และ ? จะต้องมีเครื่องหมาย ‘’ กำกับเสมอ ความหมายของสัญลักษณ์ทั้งสองคือ
*            ใช้แทนจำนวนตัวอักษรได้หลายตัว
?             ใช้แทนจำนวนตัวอักษรที่ไม่ทราบค่า 1 ตัว
4.    IS  NULL  เป็นโอเปอเรเตอร์ที่ใช้ในการแสดงค่าของคอลัมน์ที่มีค่าเป็นค่าว่าง หรือไม่มีค่านอกจากโอเปอเรเตอร์ของ SQL ทั้ง 4 ที่กล่าวมาแล้วข้างต้นโอเปอเรเตอร์เหล่านี้ ยังสามารถใช้เป็นเงื่อนไขในเชิงปฏิเสธโดยใช้คำว่า NOT นำหน้า
การเรียกดูข้อมูลแบบมีหลายเงื่อนไข โดยใช้โอเปอเรเตอร์บูลีน
การเรียกดูข้อมูลที่มีเงื่อนไขมากกว่าหนึ่งเงื่อนไข สามารถใช้โอเปอเรเตอร์บูลีนเป็นตัวเชื่อมโยงเงื่อนไขดังกล่าว โอเปอเรเตอร์บูลีน ประกอบด้วย
                AND                 ใช้เชื่อมเงื่อนไข โดยข้อมูลที่จะแสดงออกมาจะต้องเป็นจริงตามเงื่อนไขทั้งสอง
          OR             ใช้เชื่อมเงื่อนไขสองเงื่อนไข โดยข้อมูลที่จะแสดงออกมา จะเป็นจริงตามเงื่อนไขใด
                                                เงื่อนไขหนึ่ง
                NOT                  ใช้แสดงหน้าเงื่อนไขใดเงื่อนไขหนึ่ง เพื่อให้ได้ข้อมูลที่ไม่เป็นตามเงื่อนไขที่ระบุ








ข้อสอบ O-net


แบบทดสอบวัดผลสัมฤทธิ์ทางการเรียนเตรียมสอบ  O-NET ม.
ประจำปีการศึกษา 2549-2555
กลุ่มสาระการเรียนรู้การงานอาชีพและเทคโนโลยี 

1. ซอฟต์แวร์ คือ
ก. โปรแกรมชุดของคำสั่งที่ควบคุมการทำงานของคอมพิวเตอร์
ข. อุปกรณ์เทคโนโลยีระดับสูง
ค. โปรแกรมแก้ปัญหาทุกอย่างของมนุษย์
ง. อุปกรณ์ที่ทำหน้าเสมือนสมองกล
2. ข้อใดไม่ใช่ระบบปฏิบัติการ
ก. ระบบปฏิบัติการดอส
ข. ระบบปฏิบัติการไมโครซอฟท์เวิร์ด
ค. ระบบปฏิบัติการไมโครซอฟต์วินโดวส์
ง. ระบบปฏิบัติการ แอนดรอยด์
3. ชนิดของซอฟต์แวร์ (software) มีทั้งหมดกี่ชนิด
ก. มี 1 ชนิด 1.ซอฟต์แวร์ระบบ
ข. มี 2 ชนิด 1.ซอฟต์แวร์ระบบ 2.ซอฟต์แวร์ประยุกต์
ค. มี 3 ชนิด 1.ซอฟต์แวร์ระบบ 2.ซอฟต์แวร์ ประยุกต์ 3.ซอฟต์แวร์บุคคล
ง. มี 4 ชนิด 1.ซอฟต์แวร์ระบบ 2.ซอฟต์แวร์ประยุกต์ 3.ซอฟต์แวร์บุคคล 4. ซอฟต์แวร์ บริหาร
4. ข้อใดคือความหมายของ ฮาร์ดแวร์ ?
ก. โปรแกรมที่สั่งให้คอมพิวเตอร์ทำงาน
ข. ส่วนประกอบของเครื่องคอมพิวเตอร์
ค. ขั้นตอนในการปฏิบัติงาน
ง. บุคลากรที่ทำงานกับคอมพิวเตอร์
5. ผู้ก่อตั้งและผู้สร้างFacebook.com คือใคร
ก.  ฟาร์ค ซัคเกอร์เบิร์ก
ข.  มาร์ค คาลเบิร์ก
ค.  มาร์ค ซัคเกอร์เบิร์ก
ง.  มาร์ค คาลเบิร์ก
6. Social Media โซเชียลมีเดีย มีความหมาย ตรงกับข้อใด
ก. การจัดการเรียนการสอนผ่านคอมพิวเตอร์
ข. เว็บไซต์บริการอัพโหลดไฟล์
ค. โปรแกรม แชต Line , Tango , BeeTalk
ง. เว็บไซต์สังคมออนไลน์ ที่แชร์ แบ่งปัน ภาพถ่าย วีดีโอ เสียง ข้อมูล
7.ไฟล์ที่ถูกบีบอัดด้วยโปรแกรม WinZip จะมีส่วนขยายหรือนามสกุลไฟล์ตามข้อใด
       ก.  doc 
       ข.  zip     
       ค.  com 
       ง.  txt
8. การวัดขนาดข้อมูล 8 Bit มีค่าเท่ากับ
    ก. 10 Byte
    ข. 100 Byte
    ค. 1 Byte
    ง. 1024 Byte

 9.ข้อมูลสารสนเทศ คืออะไร
   ก. ข้อมูลที่ได้รับการกรอง และเรียบเรียง ที่สามารถนำไปใช้งานได้
   
ข. ความเป็นจริงที่ยังเป็นข้อมูลดิบซึ่งไม่ได้ผ่านการประมวลผลใด ๆ
   ค. ข้อมูลที่ประมวลผลแล้ว
   ง. ผลลัพท์ของการทำงาน
10.ข้อใดเป็นเทคโนโลยีการเชื่อมต่อข้อมูลไร้สายทั้งหมด.
1.  Wi-Fi  ,  IP                                                                                                              2.  Wi-Fi  ,Bluetooth                                                                                                       3.  3G  ADSL                                                                                                              4.  3G    Ethernet