ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
ได้พิมพ์โดยKrisik Kriangsak ได้เปลี่ยน 9 ปีที่แล้ว
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
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.