งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

Introduction to SQL (MySQL) 353352 – Special Problem (Database) Choopan Rattanapoka.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "Introduction to SQL (MySQL) 353352 – Special Problem (Database) Choopan Rattanapoka."— ใบสำเนางานนำเสนอ:

1 Introduction to SQL (MySQL) – Special Problem (Database) Choopan Rattanapoka

2 SQL (Structured Query Language)  SQL ที่ใช้ในระบบฐานข้อมูลแบบ Relational Database เกิดมา จากพื้นฐานของ Relational Model อย่างเช่น Relational Algebra  SQL ประกอบไปด้วยหลายส่วน  Data-Definition Language (DDL) : เป็นคำสั่งเพื่อกำหนด relation schemas  Interactive data-manipulation language (DML) : เป็นการรวม คำสั่งใน query language ที่มาจากพื้นฐานของ relational algebra และ relational calculus  Embedded DML : อยู่ในรูป library เพื่อติดต่อกับภาษาโปรแกรมอื่นๆ เช่น C, Pascal, PHP  View Definition : คำสั่งเกี่ยวกับการสร้าง view  Authorization : คำสั่งเกี่ยวกับสิทธิการเข้าถึงข้อมูล  Integrity : คำสั่งเกี่ยวกับการกำหนดความถูกต้องของข้อมูล  Transaction Control : คำสั่งเกี่ยวกับการเริ่มต้นและสิ้นสุดของ transaction เช่น lock

3 MySQL  MySQL เป็นโปรแกรมระบบฐานข้อมูลแบบ Relational Database System  เป็น open source และสามารถ download มาใช้ได้ Free  สามารถทำงานได้กับระบบปฎิบัติการสำคัญๆ ได้หมด เช่น Windows, Linux, Mac OS  Website:

4 AppServ  ในการเรียนการสอนต่อไป เราจะใช้ AppServ ซึ่งไปการรวม software หลายอย่างเข้าด้วยกัน เพื่อเป็น package ที่ง่ายใน การติดตั้ง และ ใช้งาน  Website:  ในโปรแกรม AppServ (AppServ ) จะประกอบไปด้วย  Apache : เป็นโปรแกรม web server  PHP : module PHP ที่ทำให้ web server สามารถใช้งาน ภาษา PHP ได้  MySQL b : ระบบฐานข้อมูล mySQL  phpMyAdmin : เป็น web page ที่ช่วยในการติดต่อการ ระบบฐานข้อมูล mySQL ทำให้ทำงานกับระบบฐานข้อมูล mySQL ได้ง่ายขึ้น

5 AppServ  เมื่อติดตั้งโปรแกรม AppServ สามารถดูการทำงานว่าเริ่มต้น ทำงานได้ด้วยดี โดยเปิด web browser และพิมพ์ ที่ช่อง URL

6 การใช้ MySQL ผ่านทาง terminal  ใน Windows ให้กด control panel -> run -> พิมพ์ cmd  เมื่อได้ terminal ให้พิมพ์ mysql –u root –p  หมายถึงเรียกใช้งานโปรแกรม mysql โดยจะเข้าสู่ระบบฐานข้อมูล แบบ user (-u) ที่ชื่อ root และ –p หมายถึง เป็น account ที่มี password ป้องกันไว้อยู่  เมื่อโปรแกรมถาม password ให้ใส่ password ของ root ที่ตั้งเอาไว้

7 การใช้ MySQL ผ่านทาง terminal  ถ้าพิมพ์รหัสถูกต้องจะเข้าสู่ prompt ของโปรแกรม MySQL

8 คำสั่ง MySQL  เราสามารถตรวจดูระบบฐานข้อมูลทั้งหมด ที่ root สามารถ มองเห็นด้วยคำสั่ง show databases;

9 คำสั่ง MySQL  ถ้าติดตั้ง AppServ จะมีฐานข้อมูลเริ่มต้นอยู่ 4 ฐานข้อมูล  Information_schema และ mysql เป็นฐานข้อมูลที่ใช้ในการตั้งค่า ระบบของ MySQL  Phpmyadmin เป็นฐานข้อมูลที่เก็บค่าระบบของ PhpMyAdmin  Test เป็นฐานข้อมูลทดลอง  เราสามารถเลือกการทำงานว่าจะทำงานกับฐานข้อมูลตัว ไหนด้วยคำสั่ง use ; เช่น use phpmyadmin;

10 คำสั่ง MySQL  เราสามารถทราบว่าระบบฐานข้อมูลที่เราใช้อยู่นั้นประกอบ ไปด้วย ตาราง อะไรบ้าง โดยการใช้คำสั่ง show tables;

11 การดูโครงสร้างของตารางที่ถูกสร้างมาแล้ว  สามารถดูโครงสร้างของตารางได้โดยใช้คำสั่ง DESCRIBE หรือ DESC ;

12 Let’s go SQL  ในการค้นหาข้อมูลด้วย Relational Algebra ส่วนใหญ่จะอยู่ ในรูป  ใน SQL นั้นจะมีคำสั่งในรูป SELECT A1, A2, …, An FROM R1, R2, …, Rm WHERE P

13 Relational Algebra -> SQL จาก Relational Schema Person(id, name, age) Relational Algebra เพื่อหารหัส และ ชื่อ ของคนที่มีอายุมากกว่า 20 SQL : SELECT id, name FROM person WHERE age > 20;

14 Relational Algebra -> SQL  ในกรณีที่ Relational Algebra ไม่มีการใช้ project ( ) หมายถึงให้แสดงผลลัพธ์ออกมาทุกฟิลด์ ซึ่งตรงกับ เครื่องหมาย “*” ใน SQL  Relational Algebra  SQL SELECT * FROM person WHERE age > 20

15 Relational Algebra -> SQL  ในกรณีที่ Relational Algebra ไม่มีการใช้ select ( ) หมายถึงไม่มีเงื่อนไขในการกรองผลลัพธ์ ดังนั้นใน SQL สามารถละ WHERE ออกไปได้  Relational Algebra  SQL SELECT id,name FROM person

16 Relational Algebra -> SQL  ถ้าอยากจะแสดงข้อมูลทุกแถว และทุกหลักในตาราง สามารถเขียนด้วย SQL คือ SELECT * FROM เช่น SELECT * FROM person

17 SQL : SELECT  คำสั่ง SELECT ใน SQL ตามด้วยฟิลด์ที่จะค้นหา วิธี SELECT มีอยู่ 2 แบบ  SELECT ALL ( เป็น default ของคำสั่ง SELECT ถ้าไม่ระบุ )  SELECT DISTINCT

18 SQL : SELECT  คำสั่ง SELECT สามารถทำการ +, -, *, / กับฟิลด์ที่เลือก แสดง ออกมาได้

19 SQL : FROM  ใช้สำหรับเลือกตารางที่จะค้นหาข้อมูล ถ้าใส่มากกว่า 1 และคั่นด้วยเครื่องหมาย “,” หมายถึงจะทำผลคูณ cartesian ของตารางนั้นๆ

20 SQL : WHERE  ใน Relational Algebra เงื่อนไขของ จะเปลี่ยนจาก สัญลักษณ์ทางคณิตศาสตร์ เป็น สัญลักษณ์ที่พิมพ์ได้ทาง keyboard ปกติ  Logical Operations (RA  SQL)   AND   OR   NOT  Arithmetic Operations (SQL)  >, =, =, <>

21 Exercise 1  กำหนดตารางนักเรียนที่มีโครงสร้างดังนี้ Student(Fname, Lname, Faculty, GPA) Fname = ชื่อ Lname = นามสกุล Faculty = คณะ GPA = คะแนน GPA  จงเขียน SQL เพื่อหา  ชื่อและนามสกุลของนักเรียนที่อยู่ที่คณะ “ วทอ ”  นามสกุลของนักเรียนที่มี GPA > 2.00  ทุกข้อมูลของนักเรียนที่มีนามสกุล “ ชินวัด ” และ GPA < 2.00  ทุกข้อมูลของนักเรียนที่มีนามสกุล “ ชินวัด ” หรือนามสกุล “ วัด ชิน ”

22 SQL : UNION  ใน SQL สามารถทำการรวมค่าของ 2 SQL statements ด้วย การใช้คำสั่ง  UNION  ลบข้อมูลที่ซ้ำกันออก  UNION ALL  เก็บข้อมูลที่ซ้ำกันไว้

23 SQL : Set Difference  ใน MySQL ไม่มีคำสั่ง set difference โดยตรงแต่สามารถ เขียนได้ ดูตัวอย่าง  SELECT cust_id FROM borrower WHERE cust_id NOT IN (SELECT cust_id FROM depositor);

24 SQL : Rename  ใน SQL การเปลี่ยนชื่อสามารถเปลี่ยนได้ทั้งชื่อ ฟิลด์ และ ชื่อตารางด้วยคำสั่ง ชื่อเก่า AS ชื่อใหม่ ตัวอย่าง

25 SQL : Set Intersect  ใน MySQL ไม่มีคำสั่ง intersect ให้ใช้โดยตรงแต่สามารถ เขียนได้ ดังนี้  SELECT cust_id FROM borrower WHERE cust_id IN (SELECT cust_id FROM depositor)

26 SQL : Natural Join Cust_idName John DJ Cust_idCity Bangkok Nonthaburi CustNameCustCity วิธีที่ใช้ Cartesian product : วิธีที่ใช้ Natural-Join :

27 SQL : Natural Join

28 Exercise 2  จงแปลง Relational Algebra ต่อไปนี้ให้เป็นคำสั่ง SQL 


ดาวน์โหลด ppt Introduction to SQL (MySQL) 353352 – Special Problem (Database) Choopan Rattanapoka.

งานนำเสนอที่คล้ายกัน


Ads by Google