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

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

Introduction to SQL (MySQL) – Special Problem (Database)

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


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

1 Introduction to SQL (MySQL) 353352 – 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
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 กำหนดตารางนักเรียนที่มีโครงสร้างดังนี้ จงเขียน SQL เพื่อหา
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 วิธีที่ใช้ Cartesian product :
Cust_id Name John DJ Cust_id City Bangkok Nonthaburi CustName CustCity วิธีที่ใช้ Cartesian product : วิธีที่ใช้ Natural-Join :

27 SQL : Natural Join

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


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

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


Ads by Google