Database
204406 Business Database
วัตถุประสงครายครั
ง้
์
นักศึกษาสามารถ
 อธิ บายแนวคิดต่าง ๆ เกี่ยวกับฐานข้อมูลได้
 อธิ บายแนวทางการออกแบบ พัฒนา และ
จัดการฐานข้อมูลได้
ระบบจัดการฐานข้อมูล (DBMS)
Microsoft SQL Server
Oracle, etc.
หัวข้อบรรยาย
 ข้อมูล/สารสนเทศ
 ระบบจัดการฐานข้อมูล
 สถาปั ตยกรรมฐานข้อมูล
 ER-Model
 หลักการออกแบบ
 SQL
 Relational Algebra
 Concurrency
แนวคิดเกีย
่ วกับฐานขอมู
้ ล
 ข้อมูล/สารสนเทศ
 Anomaly/Constraints
 ความซ้ าซ้อน
แนวคิดเกีย
่ วกับฐานขอมู
้ ล

ขอมู
้ ล/สารสนเทศ
แสดงรายละเอียดของหนังสื อทุกคอลัมน์ที่ผแู ้ ต่งคือคุณ
สมชาย และมีราคาต่ากว่า 300 บาท
book_id
book_name
author
publisher
price
0001
คู่กรรม
ทมยันตี
ดอกหญ้า
250.00
0002
บ้านทรายทอง
สมชาย
ดอกหญ้า
250.00
0003
ดาวพระศุกร์
พลูโต
ดอกหญ้า
220.00
0004
พระเสาร์แทรก
สมหญิง
ดอกหญ้า
300.00
0007
พจมาน สว่างวงศ์ สมชาย
ใบไม้
400.00
book
แนวคิดเกีย
่ วกับฐานขอมู
้ ล

ขอมู
้ ล/สารสนเทศ
SELECT * FROM book
WHERE author = ‘สมชาย’ AND price < 300
book_id
book_name
author
publisher
price
0002
บ้านทรายทอง
สมชาย
ดอกหญ้า
250.00
แนวคิดเกีย
่ วกับฐานขอมู
้ ล

Anomaly/Constraints
book
publisher
book_name
author
publisher
publisher
Address
Phone No
คู่กรรม
ทมยันตี
ดอกหญ้า
ดอกหญ้า
กทม.
0-2334-3422
บ้านทรายทอง
สมชาย
ดอกหญ้า
ใบไม้
โคราช
0-4423-2322
ดาวพระศุกร์
พลูโต
ดอกหญ้า
ดอกหญ้า
กรุ งเทพฯ
0-2334-3422
พระเสาร์แทรก
สมหญิง
ดอกหญ้า
นางทาส
สมโชค
ใบไม้
พจมาน สว่างวงศ์ สมชาย
ใบไม้
Unique Key Constraints
แนวคิดเกีย
่ วกับฐานขอมู
้ ล

Anomaly/Constraints
book
publisher
book_name
author
publisher
publisher
Address
Phone No
คู่กรรม
ทมยันตี
ดอกหญ้า
ดอกหญ้า
กทม.
0-2334-3422
บ้านทรายทอง
สมชาย
ดอกหญ้า
ใบไม้
โคราช
0-4423-2322
ดาวพระศุกร์
พลูโต
ดอกหญ้า
ดอกหญ้า
กรุ งเทพฯ
0-2334-3422
พระเสาร์แทรก
สมหญิง
ดอกหญ้า
นางทาส
สมโชค
ใบไม้
พจมาน สว่างวงศ์ สมชาย
ใบไม้
แนวคิดเกีย
่ วกับฐานขอมู
้ ล

Anomaly/Constraints
book
publisher
book_name
author
publisher
publisher
Address
Phone No
คู่กรรม
ทมยันตี
ดอกหญ้า
ดอกหญ้า
กทม.
0-2334-3422
บ้านทรายทอง
สมชาย
ดอกหญ้า
ใบไม้
โคราช
0-4423-2322
ดาวพระศุกร์
พลูโต
ดอกหญ้า
ดอกหญ้า
กรุ งเทพฯ
0-2334-3422
พระเสาร์แทรก
สมหญิง
ดอกหญ้า
นางทาส
สมโชค
กอหญ้ า
พจมาน สว่างวงศ์ สมชาย
ใบไม้
Foreign Key Constraints
แนวคิดเกีย
่ วกับฐานขอมู
้ ล

ความซา้ ซ้อน
book
publisher
book_name
author
publisher
publisher
Address
Phone No
คู่กรรม
ทมยันตี
ดอกหญ้า
ดอกหญ้า
กทม.
0-2334-3422
บ้านทรายทอง
สมชาย
ดอกหญ้า
ใบไม้
โคราช
0-4423-2322
ดาวพระศุกร์
พลูโต
ดอกหญ้า
ดอกหญ้า
กรุ งเทพฯ
0-2334-3422
พระเสาร์แทรก
สมหญิง
ดอกหญ้า
นางทาส
สมโชค
กอหญ้ า
พจมาน สว่างวงศ์ สมชาย
ใบไม้
แนวคิดเกีย
่ วกับฐานขอมู
้ ล

ความซา้ ซ้อน
book
book_name
author
publisher
address
phone no
คู่กรรม
ทมยันตี
ดอกหญ้า
กทม.
0-2334-3422
บ้านทรายทอง
สมชาย
ดอกหญ้า
กทม.
0-2334-3422
ดาวพระศุกร์
พลูโต
ดอกหญ้า
กทม.
0-2334-3422
พระเสาร์แทรก
สมหญิง
ดอกหญ้า
กทม.
0-2334-3422
นางทาส
สมโชค
ดอกหญ้า
กทม.
0-2334-3422
ใบไม้
โคราช
0-4423-2322
พจมาน สว่างวงศ์ สมชาย
Join
T⊳⊲U
U
T
A
B
B
C
A
B
C
a
1
1
x
a
1
x
b
2
1
y
a
1
y
3
z
ระบบฐานขอมู
้ ล

Data Dictionary
สถาปัตยกรรมฐานขอมู
้ ล



ระดับภายนอก – External
ระดับความคิด – Conceptual
ระดับภายใน – Internal
ระดับภายนอก (PASCAL)
EMP = RECORD
ID : INTEGER;
SAL : INTEGER;
END;
ระดับภายนอก (COBOL)
01 EMPREC.
02 ENO PIC 9(6).
02 DEPNO PIC 9(4).
ระดับหลักการ
EMPLOYEE
EMP_NUMBER
DEP_CODE
SALARY
CHARACTER (6)
CHARACTER (4)
NUMBER (6)
ระดับภายใน
STORED_EMP
PREFIX
ENO
DEPCODE
PAY
LENGTH=18
TYPE=BYTE(6),OFFSET=0
TYPE=BYTE(6),OFFSET=6,INDEX=EMPX
TYPE=BYTE(4),OFFSET=12
TYPE=FULLWORD,OFFSET=16
สถาปัตยกรรมฐานขอมู
้ ล



ระดับภายนอก
ระดับความคิด
ระดับภายใน
ผูใ้ ช้
book
book_id
โปรแกรมเมอร์
member
วิว
member
member_nam
e
member_nam
e
member_id
member_id
book_name
member_nam
e
member_nam
e
staff
member
staff_id
staff_name
staff
member_nam
member_nam
member_nam
e
e
e
20 ส ม
ค
ว
ร
ส
ม
สถาปัตยกรรมฐานขอมู
้ ล



ระดับภายนอก
ระดับความคิด
ระดับภายใน
ผูใ้ ช้
โปรแกรมเมอร์
วิว
book
member
book_id
staff
member_id
book_nam
staff_id
e
member_name
staff_name
staff
20 ส ม
ค
ว
ร
ส
ม
การออกแบบฐานขอมู
้ ล



Conceptual Model
Logical Model
Physical Model
book
book_id
member
member
member_nam
e
member_nam
e
member_id
member_id
book_name
member_nam
e
member_nam
e
staff
staff_id
staff_name
member
member_nam
member_nam
member_nam
e
e
e
การออกแบบฐานขอมู
้ ล



Conceptual Model
Logical Model
Physical Model
book
book
rental
rental
CREATE TABLE member
(
member_id varchar(7),
member_name varchar(50)
)
member
member
การออกแบบฐานขอมู
้ ล



Conceptual Model
Logical Model
Physical Model
rental
book
member
member
book
member_id
book_id
member_name
book_name
rental
book_id
member-_id
CREATE TABLE member
(
member_id varchar(7),
member_name varchar(50)
)
การออกแบบฐานขอมู
้ ล
ผูใ้ ช้
โปรแกรมเมอร์
วิว
rental
book
member
book
book
member
book_id
member_id
book_id
member_id
book_name
book_name
staff
member_name
member_name
rental
book_id
staff_id
member-_id
staff_name
staff
2
ส ม
member
ค
ว
ร
ส
ม
CREATE TABLE member
(
member_id varchar(7),
member_name varchar(50)
)
การออกแบบฐานขอมู
้ ล
ภายนอก
Conceptual Design
Logical Design
แนวคิด
Physical Design
ภายใน
ระบบฐานขอมู
้ ลเชิงสั มพันธ ์

Key
student
student_name
student_lastname
address
สมชาย
เก่งไม่จริ ง
สมชาย
ฉลาด
แซ่แต้
แต่ร่ ารวย
แซ่แต้
แต่ไม่เฉลียว
23/12 หมู่ 7 ต.บ้านนอก อ.บ้านนา…
222 ต.ท่าศาลา อ.เมือง จ.นครศรี …
111 ถนนมหาวิทยาลัย 1 ต.สุ รนารี …
99 วิภาวดีรังสิ ต แขวงดอนมือง…
ระบบฐานขอมู
้ ลเชิงสั มพันธ ์

Key
student
student_id
student_name
student_lastname
address
B4700001
สมชาย
แซ่แต้
23/12 หมู่ 7 ต.บ้านนอก อ.บ้านนา…
B4700002
เก่งไม่จริ ง
แต่ร่ ารวย
222 ต.ท่าศาลา อ.เมือง จ.นครศรี …
B4700003
สมชาย
แซ่แต้
111 ถนนมหาวิทยาลัย 1 ต.สุ รนารี …
B4700004
ฉลาด
แต่ไม่เฉลียว
99 วิภาวดีรังสิ ต แขวงดอนมือง…
ระบบฐานขอมู
้ ลเชิงสั มพันธ ์

Key
student
student_id
civil_id
student_name
student_lastname
address
B4700001
B4700002
B4700003
B4700004
3100920930291
3100920230291
3100420930291
2100920930291
สมชาย
เก่งไม่จริ ง
สมชาย
ฉลาด
แซ่แต้
แต่ร่ ารวย
แซ่แต้
แต่ไม่เฉลียว
23/12 หมู่ 7 ต.บ้าน…
222 ต.ท่าศาลา …
111 ถนนมหาวิท…
99 วิภาวดีรังสิ ต …
ER-Model


Requirement
Weak Entity
ER-Model
หนังสื อ
book
book_name
author
publisher
status
คู่กรรม
ทมยันตี
ดอกหญ้า
บ้านทรายทอง
สมชาย
ดอกหญ้า
บนชั้น
บนชั้น
ดาวพระศุกร์
พลูโต
ดอกหญ้า
พระเสาร์แทรก
สมหญิง
ดอกหญ้า
บนชั้น
บนชั้น
นางทาส
สมโชค
กอหญ้า
ถูกยืม
ใบไม้
ถูกยืม
พจมาน สว่างวงศ์ สมชาย
ER-Model
rental
book
member_id
book_id
book_id
book_name
staff_id
staff
staff_id
staff_name
member
member_id
member_name
Normalization
รหัสนักศึกษา ชื่อ สาขา
สานัก
รหัสวิชา
ชื่อวิชา
หน่ วยกิต เกรด อาจารย์ ผ้สู อน ห้ องพักอาจารย์
B4301
แสง เคมี
วิทยาศาสตร์ C101
C702
C111
เคมี 1
คณิตศาสตร์
คอมพิวเตอร์
3
3
4
B
A
B
สมชาย
สมศรี
สมศรี
4071
4052
4052
B4305
ดวง เคมี
วิทยาศาสตร์ C101
เคมี 1
3
A
สมชาย
4071
Normalization
รหัสนักศึกษา ชื่อ สาขา
สานัก
รหัสวิชา
ชื่อวิชา
หน่ วยกิต เกรด อาจารย์ ผ้สู อน ห้ องพักอาจารย์
B4301
แสง เคมี
วิทยาศาสตร์ C101
เคมี 1
3
B
สมชาย
4071
B4301
แสง เคมี
วิทยาศาสตร์ C702
คณิตศาสตร์
3
A
สมศรี
4052
B4301
แสง เคมี
วิทยาศาสตร์ C111
คอมพิวเตอร์
4
B
สมศรี
4052
B4305
ดวง เคมี
วิทยาศาสตร์ C101
เคมี 1
3
A
สมชาย
4071
Normalization
รหัสนักศึกษา ชื่อ สาขา
สานัก
รหัสนักศึกษา รหัสวิชา
เกรด
B4301
แสง เคมี
วิทยาศาสตร์
B4301
C101
B
B4301
แสง เคมี
วิทยาศาสตร์
B4301
C702
A
B4301
แสง เคมี
วิทยาศาสตร์
B4301
C111
B
B4305
ดวง เคมี
วิทยาศาสตร์
B4305
C101
A
รหัสวิชา
ชื่อวิชา
หน่ วยกิต อาจารย์ ผ้สู อน ห้ องพักอาจารย์
C101
เคมี 1
3
สมชาย
4071
C702
คณิตศาสตร์
3
สมศรี
4052
C111
คอมพิวเตอร์
4
สมศรี
4052
C101
เคมี 1
3
สมชาย
4071
พีชคณิตและแคลคูลส
ั เชิงสั มพันธ ์
Remainder
T
A
U
B
B
R
S
R S
a
1
a
1
b
2
a
2
3
a
3
b
1
b
2
b
3
T⊳⊲U
C
A
B
C
a
1
1
x
a
1
X
b
2
1
y
a
1
y
3
z
SQL
SELECT student.student_name, school.school_name
FROM student, school
WHERE student.school_id = school.school_id
SQL
SELECT st.student_name, sc.school_name
FROM student AS st, school AS sc
WHERE st.school_id = sc.school_id
SQL
SELECT st.student_name, sc.school_name
FROM student st, school sc
WHERE st.school_id = sc.school_id
ธนาคารอดออม

ลูกค้าสามารถเปิ ดบัญชี/ฝาก/ถอน/ถามยอด/ปิ ดบัญชี ที่ที่ทา
การสาขา ฝาก/ถอน/ถามยอด ที่ตู ้ ATM และถามยอด/แก้ไข
ข้อมูลทางอินเตอร์เน็ต
ธนาคารอดออม
ลูกค้า
มี
บัญชี
ธนาคารอดออม
ลูกค้า
ประชุม
เงินสด
ธนาคารอดออม
พนักงาน
บริ การ
ลูกค้า
ธนาคารอดออม
ผูจ้ ดั การ
ประชุม
สานักงานใหญ่
ธนาคารอดออม
ลูกค้า
ทา
ธุรกรรม
โดย
พนักงาน
สาหรับ
บัญชี
ธนาคารอดออม
ลูกค้า
ธุรกรรม
ATM
บัญชี
ธนาคารอดออม
ลูกค้า
ธุรกรรม
Internet
บัญชี
ร้านหนังสื อ
book
member
book_id
staff
member_id
book_nam
e staff_idmember_name
staff_name
ร้านหนังสื อ
book
book_id
book_name
rental
member_id
book_id
staff_id
staff
staff_id
staff_name
member
member_id
member_name
ธนาคารอดออม
ลูกค้า
ธุรกรรม
ATM
บัญชี
ลูกค้า
ธุรกรรม
บัญชี
พนักงาน
ธุรกรรม
trans_id customer_id employee_id account_no trans_type amount
date
229991 000001
000001
2989288291 ฝาก
20,000.00 02/02/2003
229992 000001
000002
2989288292 ถอน
1000.00 05/02/2003
ลูกค้า
ธุรกรรม
ATM
บัญชี
Internet
พนักงาน
ธุรกรรม
trans_id customer_id agent_id
229991 000001
A0001
229992 000001
229993 000002
229994 000001
account_no trans_type amount
date
2989288291 ฝาก
20,000.00 02/02/2003
A0001
2989288291 ฝาก
I203.158.4.30 2989288298 ถามยอด
E0002
2989288292 ถอน
20,000.00 02/02/2003
NULL
02/02/2003
1000.00 05/02/2003
ธนาคารอดออม
การฝาก
ลูกค้า
การถอน
บัญชี
การเปิ ด
พนักงาน
การปิ ด
ธนาคารอดออม
ลูกค้า
การถอน
บัญชี
การถามยอด
ATM
ธนาคารอดออม
บัญชี
สาขา
พนักงาน
ลูกค้า
ธุรกรรม
ATM
Internet
ธนาคารอดออม
ลูกค้า
บัญชี
ธนาคารอดออม
ลูกค้า
บัญชี
บัญชี
account_id
owner_id
type
balance
298812828817
000001
fix
3,000.00
298812828817
000001
saving
NULL
298812828817
000003
saving
45,000.00
298812828817
000004
saving
30.00
ธนาคารอดออม
บัญชี
สาขา
พนักงาน
ลูกค้า
ธุรกรรม
ATM
Internet
Database Design & Development
เตรี ยมการ
วิเคราะห์ความต้องการ
Conceptual Design
Logical Design
Physical Design
Implement
Data Loading
Testing
Maintenance
Database Design & Development
เตรี ยมการ
วิเคราะห์ความต้องการ
?
Conceptual Design
Logical Design
Physical Design
Implement
Data Loading
Testing
Maintenance
Database Design & Development
เตรี ยมการ
วิเคราะห์ความต้องการ
Conceptual Design
book
rental
member
Logical Design
Physical Design
Implement
Data Loading
Testing
Maintenance
Database Design & Development
เตรี ยมการ
วิเคราะห์ความต้องการ
Conceptual Design
book
rental
member
Logical Design
Physical Design
Implement
Data Loading
Testing
Maintenance
เตรี ยมการ
วิเคราะห์ความต้องการ
Conceptual Design
CREATE TABLE member
(
member_id varchar(7),
member_name varchar(50)
)
Logical Design
Physical Design
Implement
Data Loading
Testing
Maintenance
เตรี ยมการ
วิเคราะห์ความต้องการ
Conceptual Design
Logical Design
Physical Design
book
book_id
Implement
book_name
Data Loading
Testing
Maintenance
เตรี ยมการ
วิเคราะห์ความต้องการ
Conceptual Design
Logical Design
Physical Design
Implement
Data Loading
Testing
Maintenance
ภาษาสาหรับจัดการขอมู
้ ล
Data Manipulation Language (DML)
book
member
book_id
staff
member_id
book_nam
e staff_idmember_name
staff_name
ภาษาสาหรับจัดการขอมู
้ ล
Data Manipulation Language (DML)
member
book
rental
book_id
member_id
book_nam
e
book_id
member_id
member_name
ภาษาสาหรับจัดการขอมู
้ ล
Data Manipulation Language (DML)
book
member
book_id
book_name
author
publisher
price
0001
คูกรรม
่
ทมยันตี
ดอกหญา้
250.0
0
0002
บานทรายทอง
้
สมชาย
ดอกหญา้
250.0
0
0003
ดาวพระศุกร ์
พลูโต
ดอกหญา้
220.0
0
0004
พระเสารแทรก
์
สมหญิง
ดอกหญา้
300.0
0
0008
เขาวาผมฆ
าพี
่ ้าง
่
่ ห
นพดล
ใบไม้
100.0
0
member_id
name
address
0001
Neo
Zion
0002
Trinity
Zion
0003
Morpheus
Zion
0004
Smith
Matrix
rental
member_id
book_id
ภาษาสาหรับจัดการขอมู
้ ล
Data Manipulation Language (DML)
book
member
book_id
book_name
author
publisher
price
0001
คูกรรม
่
ทมยันตี
ดอกหญา้
250.0
0
0002
บานทรายทอง
้
สมชาย
ดอกหญา้
250.0
0
0003
ดาวพระศุกร ์
พลูโต
ดอกหญา้
220.0
0
0004
พระเสารแทรก
์
สมหญิง
ดอกหญา้
300.0
0
0008
เขาวาผมฆ
าพี
่ ้าง
่
่ ห
นพดล
ใบไม้
100.0
0
member_id
name
address
0001
Neo
Zion
0002
Trinity
Zion
0003
Morpheus
Zion
0004
Smith
Matrix
rental
member_id
book_id
0001
0002
ภาษาสาหรับจัดการขอมู
้ ล
Data Manipulation Language (DML)
book
book_id
book_name
author
publisher
price
0001
คูกรรม
่
ทมยันตี
ดอกหญา้
250.0
0
0002
บานทรายทอง
้
สมชาย
ดอกหญา้
250.0
0
0003
ดาวพระศุกร ์
พลูโต
ดอกหญา้
220.0
0
พระเสารแทรก
์
สมหญิง
ดอกหญา้
300.0
0
เขาวาผมฆ
าพี
่ ้าง
่
่ ห
นพดล
ใบไม้
100.0
0
0004
0008
member
member_id
name
address
0001
Neo
Zion
0002
Trinity
Zion
0003
Morpheus
Zion
0004
Smith
Matrix
rental
member_id
book_id
0001
0002
0002
0008
ภาษาสาหรับจัดการขอมู
้ ล
Data Manipulation Language (DML)
member
rental r
book
member_id
name
address
member_id
book_id
0001
Neo
Zion
0001
0002
0002
Trinity
Zion
0002
0008
0003
Morpheus
Zion
0004
Smith
Matrix
book_id
book_name
author
publisher
price
0001
คูกรรม
่
ทมยันตี
ดอกหญา้
250.00
0002
บานทรายทอง
้
สมชาย
ดอกหญา้
250.00
0003
ดาวพระศุกร ์
พลูโต
ดอกหญา้
220.00
0004
พระเสารแทรก
์
สมหญิง
ดอกหญา้
300.00
0008
เขาวาผมฆ
าพี
่ ้าง
่
่ ห
นพดล
ใบไม้
100.00
member_id
name
address
r.member_id
r.book_id
book_id
book_name
author
publisher
price
0001
Neo
Zion
0001
0002
0001
บานทรายทอง
้
สมชาย
ดอกหญา้
250.00
0002
Trinity
Zion
0002
0008
0008
เขาวาผมฆ
าพี
่ ้าง
่
่ ห
นพดล
ใบไม้
100.00
ภาษาสาหรับจัดการขอมู
้ ล
Data Manipulation Language (DML)
SELECT member.name, book.book_name
FROM member, rental, book
WHERE member.member_id = rental.member_id
AND rental.book_id = book.book_id
member_id
name
address
r.member_id
r.book_id
book_id
book_name
author
publisher
price
0001
Neo
Zion
0001
0002
0001
บานทรายทอง
้
สมชาย
ดอกหญา้
250.00
0002
Trinity
Zion
0002
0008
0008
เขาวาผมฆ
าพี
่ ้าง
่
่ ห
นพดล
ใบไม้
100.00
ภาษาสาหรับจัดการขอมู
้ ล
Data Manipulation Language (DML)
member
rental r
book
member_id
name
address
member_id
book_id
0001
Neo
Zion
0001
0002
0002
Trinity
Zion
0002
0008
0003
Morpheus
Zion
0004
Smith
Matrix
book_id
book_name
author
publisher
price
0001
คูกรรม
่
ทมยันตี
ดอกหญา้
250.00
0002
บานทรายทอง
้
สมชาย
ดอกหญา้
250.00
0003
ดาวพระศุกร ์
พลูโต
ดอกหญา้
220.00
0004
พระเสารแทรก
์
สมหญิง
ดอกหญา้
300.00
0008
เขาวาผมฆ
าพี
่ ้าง
่
่ ห
นพดล
ใบไม้
100.00
SELECT member.name, book.book_name
FROM member, rental, book
WHERE member.member_id = rental.member_id AND rental.book_id = book.book_id
ภาษาสาหรับจัดการขอมู
้ ล
Data Manipulation Language (DML)
SELECT member.name, book.book_name
FROM member, rental, book
WHERE member.member_id = rental.member_id
AND rental.book_id = book.book_id
name
book_name
Neo
บานทรายทอง
้
Trinity
เขาวาผมฆ
าพี
่ ้าง
่
่ ห
Garage

อู่ซ่อมรถแห่งหนึ่งต้องการระบบจัดเก็บข้อมูลลูกค้า ช่าง และ
การซ่อม เพื่อที่จะจัดการกับอู่ได้ง่ายและมีประสิ ทธิภาพ
กว่าเดิม
Garage

อู่ซ่อมรถยนต์มีช่างซ่อมรถที่ชานาญในการซ่อมรถยนต์
เฉพาะยีห่ อ้ ลูกค้าของอู่โดยปกติเป็ นเจ้าของรถประมาณ 1-2
คัน การซ่อมรถใช้เวลาเพียงวันเดียวจะแล้วเสร็ จ
Garage

ทางอู่ตอ้ งการระบบที่สามารถ
1) จัดเก็บข้อมูลลูกค้า รถ และช่างได้
2) แสดงรายการรถที่ซ่อมอยูใ่ นวันปัจจุบนั
3) แสดงรายชื่อช่าง และปริ มาณงาน และเงินที่ทาได้ตลอดปี
4) ค้นหาข้อมูลรถยนต์และชื่อที่อยูล่ ูกค้าเพื่อจัดการลูกค้าสัมพันธ์
Garage
Customer
owns
(cust_id, name, address, phone, balance)
Car
(car_id, make, model, year, owner)
Garage
Customer
Car
(cust_id, name, address, phone, balance)
cust_id
name
address
…
0001
Neo
Zion
…
0002
Trinity
Zion
…
0003
Morpheus
Zion
…
(car_id, make, model, year, owner)
car_id
make
model
year
owner
0001
Toyota
Camry
2003
0001
0002
Honda
Accord
2003
0001
0003
Toyota
Vios
2003
0002
0004
BMW
323i
2002
0003
Garage
owns
Customer
(cust_id, name, address, phone, balance)
cust_id
name
address
…
0001
Neo
Zion
…
Car
(car_id, make, model, year, owner)
car_id
make
model
year
owner
0001
Toyota
Camry
2003
0001
0002
Honda
Accord
2003
0001
cust_id
name
address
…
car_id
make
model
year
owner
0001
Neo
Zion
…
0001
Toyota
Camry
2003
0001
0001
Neo
Zion
…
0002
Honda
Accord
2003
0001
Garage
Customer
Car
(cust_id, name, address, phone, balance)
(car_id, make, model, year, owner)
cust_id
name
address
…
car_id
make
model
year
owner
0002
Trinity
Zion
…
0003
Toyota
Vios
2003
0002
cust_id
name
address
…
car_id
make
model
year
owner
0002
Trinity
Zion
…
0003
Toyota
Vios
2003
0002
Garage
Customer
Car
(cust_id, name, address, phone, balance)
(car_id, make, model, year, owner)
cust_id
name
address
…
car_id
make
model
year
owner
0001
Neo
Zion
…
0001
Toyota
Camry
2003
0001
0002
Honda
Accord
2003
0001
cust_id
name
address
…
car_id
make
model
year
owner
0001
Neo
Zion
…
0001
Toyota
Camry
2003
0001
0001
Neo
Zion
…
0002
Honda
Accord
2003
0001
Garage
Customer
(cust_id, name, address, phone, balance, car_make, car_model, car_year)
cust_id
name
address
…
car_id
make
model
year
owner
0001
Neo
Zion
…
0001
Toyota
Camry
2003
0001
0001
Neo
Zion
…
0002
Honda
Accord
2003
0001
0002
Trinity
Zion
…
0003
Toyota
Vios
2003
0002
0003
Morpheus
Zion
…
0004
BMW
323i
2002
0003
Garage
Mechanic
(mech_id, name, address, salary, skill)
repairs
Car
(car_id, make, model, year, owner)
Garage
repairs
Mechanic
(mech_id, name, address, salary, skill)
Car
(car_id, make, model, year, owner)
mech_id
name
…
mech_id
car_id
repair_date
price
car_id
make
model
…
0001
Somchai
…
0001
001
01-Mar-03
1000
0001
Toyota
Camry
…
0002
Somsak
…
0002
002
01-Mar-03
3000
0002
Honda
Accord
…
0003
Somyot
…
0001
001
20-Mar-03
200
0003
Toyota
Vios
…
0004
BMW
323i
…
Garage
Mechanic
Repairs
Car
(mech_id, name, address, salary, skill) (mech_id, car_id, repair_date, price)
(car_id, make, model, …)
mech_id
name
…
mech_id
car_id
repair_date
price
car_id
make
model
…
0001
Somchai
…
0001
001
01-Mar-03
1000
0001
Toyota
Camry
…
0002
Somsak
…
0002
002
01-Mar-03
3000
0002
Honda
Accord
…
0003
Somyot
…
0001
001
20-Mar-03
200
0003
Toyota
Vios
…
0004
BMW
323i
…
Garage
Mechanic
Repairs
Car
(mecht_id, name, address, salary, skill) (mech_id, car_id, repair_date, price)
(car_id, make, model, …)
mech_id
name
…
car_id
make
model
…
0001
Somchai
…
0001
Toyota
Camry
…
0002
Somsak
…
0002
Honda
Accord
…
0003
Somyot
…
0003
Toyota
Vios
…
0004
BMW
323i
…
Garage
Mechanic
Repairs
Car
(mech_id, name, address, salary, skill) (mech_id, car_id, repair_date, price)
(car_id, make, model, …)
mech_id
name
…
car_id
make
model
…
mech_id
date
0001
Somchai
…
0001
Toyota
Camry
…
0001
03-Mar-
0002
Somsak
…
0001
Toyota
Camry
…
0001
20-Mar-
0003
Somyot
…
0002
Honda
Accord
…
0003
Toyota
Vios
…
0004
BMW
323i
…
Garage ER Diagram
Mechanic
does
(mech_id, name, address, salary, skill)
Repairs
(mech_id, car_id, repair_date, price)
is
Customer
owns
(cust_id, name, address, phone, balance)
Car
(car_id, make, model, year, owner)
Garage ER Diagram
Mechanic
does
(mech_id, name, address, salary, skill)
Repairs
(mech_id, car_id, repair_date, price)
is
Customer
owns
(cust_id, name, address, phone, balance)
Car
(car_id, make, model, year, owner)
Garage

ทางอู่ตอ้ งการระบบที่สามารถ
1) จัดเก็บข้อมูลลูกค้า รถ และช่างได้
2) แสดงรายการรถที่ซ่อมอยูใ่ นวันปัจจุบนั
3) แสดงรายชื่อช่าง และปริ มาณงาน และเงินที่ทาได้ตลอดปี
4) ค้นหาข้อมูลรถยนต์และชื่อที่อยูล่ กู ค้าเพื่อจัดการลูกค้าสัมพันธ์
Garage ER Diagram
Mechanic
does
(mech_id, name, address, salary, skill)
Repairs
(mech_id, car_id, repair_date, price)
is
Customer
owns
(cust_id, name, address, phone, balance)
Car
(car_id, make, model, year, owner)
1) จัดเก็บขอมู
้ ลลูกค้า รถ และช่างได้
Garage ER Diagram
Mechanic
does
(mech_id, name, address, salary, skill)
Repairs
(mech_id, car_id, repair_date, price)
is
Customer
owns
(cust_id, name, address, phone, balance)
Car
(car_id, make, model, year, owner)
2) แสดงรายการรถที่ซ่อมอยูใ่ นวันปั จจุบนั : เจ้าของ, รถ, ช่าง
Garage ER Diagram
Mechanic
does
(mech_id, name, address, salary, skill)
Repairs
(mech_id, car_id, repair_date, price)
is
Customer
owns
(cust_id, name, address, phone, balance)
Car
(car_id, make, model, year, owner)
3) แสดงรายชื่อช่าง ปริ มาณงาน และเงินที่ทาได้ตลอดปี
Garage ER Diagram
Mechanic
does
(mech_id, name, address, salary, skill)
Repairs
(mech_id, car_id, repair_date, price)
is
Customer
owns
(cust_id, name, address, phone, balance)
Car
(car_id, make, model, year, owner)
4) ค้นหาข้อมูลรถยนต์และชื่อที่อยูล่ ูกค้าเพื่อจัดการลูกค้าสัมพันธ์
Garage ER Diagram
Mechanic
does
(mech_id, name, address, salary, skill)
Repairs
(mech_id, car_id, repair_date, price)
is
Customer
owns
(cust_id, name, address, phone, balance)
Car
(car_id, make, model, year, owner)
รายละเอียดการซ่อมรถแต่ละครั้งว่าซ่อมอะไร?
Garage ER Diagram
Mechanic
does
(mech_id, name, address, salary, skill)
Repairs
(mech_id, car_id, repair_date, price)
is
Customer
owns
(cust_id, name, address, phone, balance)
Car
(car_id, make, model, year, owner)
รถยนต์ยหี่ อ้ ใดเสี ยบ่อยที่สุด?
Garage ER Diagram
Mechanic
does
(mech_id, name, address, salary, skill)
Repairs
(mech_id, car_id, repair_date, price)
is
Customer
owns
(cust_id, name, address, phone, balance)
Car
(car_id, make, model, year, owner)
รถยนต์ช่วงราคาใดเสี ยบ่อยที่สุด?
Garage

ทางอู่ตอ้ งการระบบที่สามารถ
1) จัดเก็บข้อมูลลูกค้า รถ และช่างได้
2) แสดงรายการรถที่ซ่อมอยูใ่ นวันปัจจุบนั
3) แสดงรายชื่อช่าง และปริ มาณงาน และเงินที่ทาได้ตลอดปี
4) ค้นหาข้อมูลรถยนต์และชื่อที่อยูล่ กู ค้าเพื่อจัดการลูกค้าสัมพันธ์
Garage
Mechanic
does
(mech_id, name, address, salary, skill)
Repairs
(mech_id, car_id, repair_date, price)
is
Customer
(cust_id, name, address, phone, balance)
1) จัดเก็บขอมู
้ ลลูกค้า รถ และช่างได้
owns
Car
(car_id, make, model, year, owner)
Garage
Mechanic
does
(mech_id, name, address, salary, skill)
Repairs
(mech_id, car_id, repair_date, price)
is
Customer
(cust_id, name, address, phone, balance)
Car
owns
(car_id, make, model, year, owner)
1) จัดเก็บขอมู
้ ลลูกค้า รถ และช่างได้
INSERT INTO customer (cust_id, name, address, phone, balance)
VALUES (0001, ‘Neo’, ‘Zion’, ‘0-1222-2222’, ‘2332’)
Garage
Mechanic
does
Repairs
(mech_id, name, address, salary, skill)
is
Customer
(cust_id, name, address, phone, balance)
1) จัดเก็บขอมู
้ ลลูกค้า รถ และช่างได้
INSERT INTO car (car_id, make, model, year, owner)
VALUES (0001, ‘Toyota’, ‘Camry’, 1998, 0001)
owns
Car
Garage
Mechanic
does
Repairs
(mech_id, name, address, salary, skill)
is
Customer
owns
(cust_id, name, address, phone, balance)
1) จัดเก็บขอมู
้ ลลูกค้า รถ และช่างได้
INSERT INTO mechanic (mech_id, name, address, salary, skill)
VALUES (0001, ‘Somchai’, ‘Zion’, 10000, ‘Honda’)
Car
Garage
Mechanic
does
Repairs
(mech_id, name, address, salary, skill)
is
Customer
owns
Car
(cust_id, name, address, phone, balance)
2) แสดงรายการรถทีซ
่ ่ อมอยูปั
ั : เจ้าของ, รถ, ช่าง
่ จจุบน
SELECT customer.name, customer.phone, car.make, car.model,
car.year, mechanic.name, repairs.price
FROM customer, car, mechanic, repairs
WHERE customer.cust_id = car.owner
AND repairs.car_id = car.car_id
AND repairs.mech_id = mechanic.mech_id
Garage
Mechanic
does
Repairs
(mech_id, name, address, salary, skill)
is
Customer
owns
Car
(cust_id, name, address, phone, balance)
2) แสดงรายการรถทีซ
่ ่ อมอยูปั
ั : เจ้าของ, รถ, ช่าง
่ จจุบน
SELECT customer.name, customer.phone, car.make, car.model, car.year,
mechanic.name, repairs.price
FROM customer c, car a, mechanic m, repairs r
WHERE customer.cust_id = car.owner
AND repairs.car_id = car.car_id
AND repairs.mech_id = mechanic.mech_id
Garage
Mechanic
does
Repairs
(mech_id, name, address, salary, skill)
is
Target Item:
Change All Illustration
Customer
owns
Car
(cust_id, name, address, phone, balance)
2) แสดงรายการรถทีซ
่ ่ อมอยูปั
ั : เจ้าของ, รถ, ช่าง
่ จจุบน
SELECT c.name, c.phone, a.make, a.model, a.year, m.name, r.price
FROM customer c, car a, mechanic m, repairs r
WHERE c.cust_id = a.owner
AND r.car_id = a.car_id
AND r.mech_id = m.mech_id
Garage
SELECT customer.name, customer.phone, car.make, car.model, car.year,
mechanic.name, repairs.price
FROM customer c, car a, mechanic m, repairs r
WHERE customer.cust_id = car.owner
AND repairs.car_id = car.car_id AND repairs.mech_id = mechanic.mech_id
AND repairs.repairs_date >= SYSDATE
Customer.name
Customer.Phone
Make
Model
Year
Mechanic.name
Price
Neo
0-1232-2122
Toyota
Camry
2003
Somchai
3000
Trinity
0-1232-2123
Honda
Accord
2003
Somsak
2000
Trinity
0-1232-2123
Honda
Civic
2003
Somsak
1300
Garage
Mechanic
does
Repairs
(mech_id, name, address, salary, skill)
is
Customer
owns
Car
(cust_id, name, address, phone, balance)
3) แสดงรายชือ
่ ช่าง ปริมาณงานและเงินทีไ่ ดจากการซ
้
่ อม
SELECT mechanic.mech_id, mechanic.name, COUNT(*) AS jobs,
SUM(repairs.price) AS total
FROM mechaic, repairs
WHERE mechanic.mech_id = repairs.mech_id
GROUP BY mechanic.mech_id
Garage
SELECT mechanic.mech_id, mechanic.name, COUNT(*) AS jobs,
SUM(repairs.price) AS total
FROM mechaic, repairs
WHERE mechanic.mech_id = repairs.mech_id
GROUP BY mechanic.mech_id
Customer.name
Customer.Phone
Make
Model
Year
Mechanic.name
Price
Neo
0-1232-2122
Toyota
Camry
2003
Somchai
3000
Trinity
0-1232-2123
Honda
Accord
2003
Somsak
2000
Trinity
0-1232-2123
Honda
Civic
2003
Somsak
1300
Garage
Mechanic
does
Repairs
(mech_id, name, address, salary, skill)
is
Customer
owns
(cust_id, name, address, phone, balance)
4) ค้นหารถยนตและข
อมู
่ งานลูกค้าสั มพันธ ์
์
้ ลลูกค้าเพือ
SELECT name, address, phone, make, model, year
FROM customer, car
WHERE customer.cust_id = car.owner
Car
Garage

User Interface
Garage
Mechanic
does
Repairs
(mech_id, name, address, salary, skill)
is
Customer
owns
(cust_id, name, address, phone, balance)
1) จัดเก็บขอมู
้ ลลูกค้า รถ และช่างได้
INSERT INTO customer (cust_id, name, address, phone, balance)
VALUES (0001, ‘Neo’, ‘Zion’, ‘0-1222-2222’, ‘2332’)
Car
Visual Basic
Visual Basic
Visual Basic With Database
Determine Database
dbEmployee
Connect to the Database
Execute Command
Use Data
Close Connection
dbEmployee
SELECT * FROM employee
empid
empname
address
B4700001
สมชาย
23/12 หมู่ 7 ต.บานนอก
อ.บาน
้
้
นา…
B4700002
เกงไม
จริ
่
่ ง
222 ต.ทาศาลา
อ.เมือง จ.นครศรี…
่
B4700003
สมชาย
111 ถนนมหาวิทยาลัย 1 ต.สุรนารี…
B4700004
ฉลาด
99 วิภาวดีรงั สิ ต แขวงดอนมือง…
Visual Basic With Database
Determine Database
Set conAddress = New ADODB.Connection
conAddress.ConnectionString = "PROVIDER=SQLOLEDB;DATA
SOURCE=LAB10;UID=user01;PWD=password;DATABASE=dbEm
ployee"
Visual Basic With Database
Connect to the Database
conAddress.Open
Visual Basic With Database
Execute Command
Set rstAddress = New ADODB.Recordset
rstAddress.Open "SELECT * FROM employee ORDER BY
empname", conAddress, adOpenStatic, adLockOptimistic
Visual Basic With Database
Use Data
Set DataGrid1.DataSource = rstAddress
Visual Basic With Database
Close Connection
rstAddress.Close
Set rstAddress = Nothing
conAddress.Close
Set conAddress = Nothing
Visual Basic With Database
Determine Database
Connect to the Database
Execute Command
Use Data
Close Connection
SQL Statement in Visual Basic
SQL Statement in Visual Basic

SQL_Statement = "SELECT * FROM employee ORDER BY
empname WHERE empname LIKE '" & Text1.Text & "'"

SQL_Statement = "INSERT INTO employee (empno, empname,
address) VALUES('" & Text1.Text & "','" & Text2.Text & "','" &
Text3.Text & "')"

SQL_Statement = "UPDATE employee SET empno='" & Text2.Text
& "' WHERE empno = '" & Text1.Text & "'"
SQL Statement in Visual Basic

SQL_Statement = "SELECT * FROM employee
ORDER BY empname WHERE empname LIKE '" &
Text1.Text & "'"
SQL Statement in Visual Basic

SQL_Statement = "SELECT * FROM employee
ORDER BY empname WHERE empname LIKE ‘” &
Text1.Text & “’”

SELECT * FROM employee ORDER BY empname
WHERE empname LIKE ‘somchai’
SQL Statement in Visual Basic

SQL_Statement = "INSERT INTO employee
(empno, empname, address) VALUES('" &
Text1.Text & "','" & Text2.Text & "','" & Text3.Text &
"')"
SQL Statement in Visual Basic

SQL_Statement = "INSERT INTO employee
(empno, empname, address) VALUES('" &
Text1.Text & "','" & Text2.Text & "','" & Text3.Text &
"')"

INSERT INTO employee (empno, empname,
address) VALUES(“0001”, “Somchai”, “111
Univers…”)
SQL Statement in Visual Basic

SQL_Statement = "UPDATE employee SET
empno='" & Text2.Text & "' WHERE empno = '" &
Text1.Text & "'"
SQL Statement in Visual Basic

SQL_Statement = "UPDATE employee SET
empname='" & Text2.Text & "' WHERE empno = '" &
Text1.Text & "'"

UPDATE employee SET empname = ‘Somsak’
WHERE empno = ‘0001’
Garage
1) จัดเก็บขอมู
้ ลลูกค้า รถ และช่างได้
INSERT INTO customer (cust_id, name, address, phone, balance)
VALUES (0001, ‘Neo’, ‘Zion’, ‘0-1222-2222’, ‘2332’)
Garage
1) จัดเก็บขอมู
้ ลลูกค้า รถ และช่างได้
Garage
1) จัดเก็บขอมู
้ ล
ลูกค้า รถ
และช่างได้
INSERT INTO customer (cust_id, name, address, phone, balance)
VALUES (0001, ‘Neo’, ‘Zion’, ‘0-1222-2222’, 2332)
Garage
1) จัดเก็บขอมู
้ ล
ลูกค้า รถ
และช่างได้
INSERT INTO customer (cust_id, name, address, phone, balance)
VALUES (0001, ‘Neo’, ‘Zion’, ‘0-1222-2222’, ‘2332’)
Garage
1) จัดเก็บขอมู
้ ล
ลูกค้า รถ
และช่างได้
INSERT INTO customer (cust_id, name, address, phone, balance)
VALUES (Text1 , Text2, Text3, Text4, Text5)
Garage
Mechanic
does
(mech_id, name, address, salary, skill)
Repairs
(mech_id, car_id, repair_date, price)
is
Customer
(cust_id, name, address, phone, balance)
Car
owns
(car_id, make, model, year, owner)
2) แสดงรายการรถทีซ
่ ่ อมอยูปั
ั : เจ้าของ, รถ, ช่าง
่ จจุบน
SELECT customer.name, customer.phone, car.make, car.model,
car.year, mechanic.name, repairs.price
FROM customer c, car a, mechanic m, repairs r
WHERE customer.cust_id = car.owner
AND repairs.car_id = car.car_id
AND repairs.mech_id = mechanic.mech_id
Garage
2) แสดงรายการรถทีซ
่ ่ อมอยูปั
ั : เจ้าของ, รถ, ช่าง
่ จจุบน
Garage
2) แสดงรายการรถทีซ
่ ่ อมอยูปั
ั :
่ จจุบน
เจ้าของ, รถ, ช่าง
SELECT customer.name, customer.phone, car.make, car.model, car.year,
mechanic.name, repairs.price
FROM customer c, car a, mechanic m, repairs r
WHERE customer.cust_id = car.owner
AND repairs.car_id = car.car_id AND repairs.mech_id = mechanic.mech_id
AND reapirs.repair_date >= SYSDATE
Garage
2) แสดงรายการรถทีซ
่ ่ อมอยูปั
ั : เจ้าของ, รถ, ช่าง?
่ จจุบน
SELECT customer.name, customer.phone, car.make, car.model, car.year,
mechanic.name, repairs.price
FROM customer c, car a, mechanic m, repairs r
WHERE customer.cust_id = car.owner
AND repairs.car_id = car.car_id
AND repairs.mech_id = mechanic.mech_id
Garage
2) แสดงรายการรถทีซ
่ ่ อมอยูปั
ั : เจ้าของ, รถ, ช่าง?
่ จจุบน
2.1) จัดเก็บขอมู
้ ลการซ่อม
Garage
Mechanic
Repairs
Car
(mech_id, name, address, salary, skill) (mech_id, car_id, repair_date, price)
mech_id
name
…
mech_id
car_id
repair_date
price
0001
Somchai
…
0001
001
01-Mar-03
1000
0002
002
01-Mar-03
3000
0001
001
20-Mar-03
200
0002
Somsak
…
0003
Somyot
…
(car_id, make, model, …)
car_id
make
model
…
0001
Toyota
Camry
…
0002
Honda
Accord
…
0003
Toyota
Vios
…
0004
BMW
323i
…
Garage
2) แสดงรายการรถทีซ
่ ่ อมอยูปั
ั : เจ้าของ, รถ, ช่าง?
่ จจุบน
2.1) จัดเก็บขอมู
้ ลการซ่อม
INSERT INTO repairs (car_id, mech_id, repairs_date, price)
VALUES (0001, 0001, ‘24-NOV-2003’, 2000)
Garage
2) แสดงรายการรถทีซ
่ ่ อมอยูปั
ั : เจ้าของ, รถ, ช่าง?
่ จจุบน
2.1) จัดเก็บขอมู
้ ลการซ่อม
Garage
2) แสดงรายการรถทีซ
่ ่ อมอยู่
ปัจจุบน
ั : เจ้าของ, รถ, ช่าง?
2.1) จัดเก็บข้อมูลการซ่อม
INSERT INTO repairs (car_id, mech_id, repairs_date, price)
VALUES (0001, 0001, ‘24-NOV-2003’, 2000)
Visual Basic
Visual Basic
Visual Basic With Database
Determine Database
dbEmployee
Connect to the Database
Execute Command
Use Data
Close Connection
dbEmployee
SELECT * FROM employee
empid
empname
address
B4700001
สมชาย
23/12 หมู่ 7 ต.บานนอก
อ.บาน
้
้
นา…
B4700002
เกงไม
จริ
่
่ ง
222 ต.ทาศาลา
อ.เมือง จ.นครศรี…
่
B4700003
สมชาย
111 ถนนมหาวิทยาลัย 1 ต.สุรนารี…
B4700004
ฉลาด
99 วิภาวดีรงั สิ ต แขวงดอนมือง…
Visual Basic With Database
Determine Database
Set conAddress = New ADODB.Connection
conAddress.ConnectionString = "PROVIDER=SQLOLEDB;DATA
SOURCE=LAB10;UID=user01;PWD=password;DATABASE=dbEm
ployee"
Visual Basic With Database
Connect to the Database
conAddress.Open
Visual Basic With Database
Execute Command
Set rstAddress = New ADODB.Recordset
rstAddress.Open "SELECT * FROM employee ORDER BY
empname", conAddress, adOpenStatic, adLockOptimistic
Visual Basic With Database
Use Data
Set DataGrid1.DataSource = rstAddress
Visual Basic With Database
Close Connection
rstAddress.Close
Set rstAddress = Nothing
conAddress.Close
Set conAddress = Nothing
Visual Basic With Database
Determine Database
Connect to the Database
Execute Command
Use Data
Close Connection
SQL Statement in Visual Basic
SQL Statement in Visual Basic

SQL_Statement = "SELECT * FROM employee ORDER BY
empname WHERE empname LIKE '" & Text1.Text & "'"

SQL_Statement = "INSERT INTO employee (empno, empname,
address) VALUES('" & Text1.Text & "','" & Text2.Text & "','" &
Text3.Text & "')"

SQL_Statement = "UPDATE employee SET empno='" & Text2.Text
& "' WHERE empno = '" & Text1.Text & "'"
SQL Statement in Visual Basic

SQL_Statement = "SELECT * FROM employee
ORDER BY empname WHERE empname LIKE '" &
Text1.Text & "'"
SQL Statement in Visual Basic

SQL_Statement = "SELECT * FROM employee
ORDER BY empname WHERE empname LIKE ‘” &
Text1.Text & “’”

SELECT * FROM employee ORDER BY empname
WHERE empname LIKE ‘somchai’
SQL Statement in Visual Basic

SQL_Statement = "INSERT INTO employee
(empno, empname, address) VALUES('" &
Text1.Text & "','" & Text2.Text & "','" & Text3.Text &
"')"
SQL Statement in Visual Basic

SQL_Statement = "INSERT INTO employee
(empno, empname, address) VALUES('" &
Text1.Text & "','" & Text2.Text & "','" & Text3.Text &
"')"

INSERT INTO employee (empno, empname,
address) VALUES(“0001”, “Somchai”, “111
Univers…”)
SQL Statement in Visual Basic

SQL_Statement = "UPDATE employee SET
empno='" & Text2.Text & "' WHERE empno = '" &
Text1.Text & "'"
SQL Statement in Visual Basic

SQL_Statement = "UPDATE employee SET
empname='" & Text2.Text & "' WHERE empno = '" &
Text1.Text & "'"

UPDATE employee SET empname = ‘Somsak’
WHERE empno = ‘0001’
SQL Statement in Visual Basic
SQL Statement
INSERT
UPDATE
DELETE
SQL Statement in Visual Basic
SQL Statement
SELECT
empid
empnam
e
address
B470000
1
สมชาย
23/12 หมู่ 7 ต.บานนอก
อ.บาน
้
้
นา…
B470000
2
เกงไม
จริ
่
่ ง
222 ต.ทาศาลา
อ.เมือง จ.นครศรี…
่
B470000
3
สมชาย
111 ถนนมหาวิทยาลัย 1 ต.สุรนารี…
B470000
4
ฉลาด
99 วิภาวดีรงั สิ ต แขวงดอนมือง…
RecordSet
SQL Statement in Visual Basic
Determine DB
Open Connect
SQL Statement
Use Data
Close Connect
Garage

ทางอู่ตอ้ งการระบบที่สามารถ
1) จัดเก็บข้อมูลลูกค้า รถ และช่างได้
2) แสดงรายการรถที่ซ่อมอยูใ่ นวันปัจจุบนั
3) แสดงรายชื่อช่าง และปริ มาณงาน และเงินที่ทาได้ตลอดปี
4) ค้นหาข้อมูลรถยนต์และชื่อที่อยูล่ กู ค้าเพื่อจัดการลูกค้าสัมพันธ์
Garage
1) จัดเก็บขอมู
้ ล
ลูกค้า รถ
และช่างได้
INSERT INTO customer (cust_id, name, address, phone, balance)
VALUES (Text1 , Text2, Text3, Text4, Text5)
Garage
2) แสดงรายการรถทีซ
่ ่ อมอยูปั
ั :
่ จจุบน
เจ้าของ, รถ, ช่าง
SELECT customer.name, customer.phone, car.make, car.model, car.year,
mechanic.name, repairs.price
FROM customer c, car a, mechanic m, repairs r
WHERE customer.cust_id = car.owner
AND repairs.car_id = car.car_id AND repairs.mech_id = mechanic.mech_id
AND reapirs.repair_date >= SYSDATE
Garage
2) แสดงรายการรถทีซ
่ ่ อมอยู่
ปัจจุบน
ั : เจ้าของ, รถ, ช่าง?
2.1) จัดเก็บข้อมูลการซ่อม
INSERT INTO repairs (car_id, mech_id, repairs_date, price)
VALUES (0001, 0001, ‘24-NOV-2003’, 2000)
ภาษาสาหรับจัดการขอมู
้ ล
Data Manipulation Language
(DML)
book
member
book_id
staff
member_id
book_name
staff_id
member_name
staff_name
ภาษาสาหรับจัดการขอมู
้ ล
Data Manipulation Language (DML)
book
rental
member
book_id
member_id
member_id
book_name
book_id
member_name
ภาษาสาหรับจัดการขอมู
้ ล
Data Manipulation Language (DML)
book
member
book_id book_name
author
publisher price
0001
คู่กรรม
ทมยันตี ดอกหญ้า 250.00
0002
บ้านทรายทอง
สมชาย ดอกหญ้า 250.00
0003
ดาวพระศุกร์
พลูโต
0004
พระเสาร์แทรก
สมหญิง ดอกหญ้า 300.00
0008
เขาว่าผมฆ่าพี่หา้ ง นพดล
member_id name
address
0001
Neo
Zion
0002
Trinity
Zion
0003
Morpheus Zion
0004
Smith
Matrix
ดอกหญ้า 220.00
ใบไม้
100.00
rental
member_id book_id
ภาษาสาหรับจัดการขอมู
้ ล
Data Manipulation Language (DML)
book
member
book_id book_name
author
publisher price
0001
คู่กรรม
ทมยันตี ดอกหญ้า 250.00
0002
บ้านทรายทอง
สมชาย ดอกหญ้า 250.00
0003
ดาวพระศุกร์
พลูโต
0004
พระเสาร์แทรก
สมหญิง ดอกหญ้า 300.00
0008
เขาว่าผมฆ่าพี่หา้ ง นพดล
member_id
name
address
0001
Neo
Zion
0002
Trinity
Zion
0003
Morpheus
Zion
0004
Smith
Matrix
rental
ดอกหญ้า 220.00
ใบไม้
100.00
member_id
book_id
0001
0002
ภาษาสาหรับจัดการขอมู
้ ล
Data Manipulation Language (DML)
book
member
book_id
book_name
author
publisher
price
0001
คู่กรรม
ทมยันตี
ดอกหญ้า
250.00
0002
บ้านทรายทอง
สมชาย
ดอกหญ้า
250.00
0003
ดาวพระศุกร์
พลูโต
ดอกหญ้า
220.00
0004
พระเสาร์แทรก
สมหญิง
ดอกหญ้า
300.00
member_id
book_id
0008
เขาว่าผมฆ่าพี่หา้ ง
นพดล
ใบไม้
100.00
0001
0002
0002
0008
member_id
name
address
0001
Neo
Zion
0002
Trinity
Zion
0003
Morpheus
Zion
0004
Smith
Matrix
rental
ภาษาสาหรับจัดการขอมู
้ ล
Data Manipulation Language (DML)
member
rental r
book
member_id
name
address
member_id
book_id
book_id
book_name
author
publisher
price
0001
Neo
Zion
0001
0002
0001
คู่กรรม
ทมยันตี
ดอกหญ้า
250.00
0002
Trinity
Zion
0002
0008
0002
บ้ านทรายทอง
สมชาย
ดอกหญ้า
250.00
0003
Morpheus
Zion
0003
ดาวพระศุกร์
พลูโต
ดอกหญ้า
220.00
0004
Smith
Matrix
0004
พระเสาร์ แทรก
สมหญิง
ดอกหญ้า
300.00
0008
เขาว่าผมฆ่าพีห่ ้ าง
นพดล
ใบไม้
100.00
member_id
name
address r.member_id
r.book_id
book_id
book_name
author
publisher
price
0001
Neo
Zion
0001
0002
0001
บ้ านทรายทอง
สมชาย
ดอกหญ้า
250.00
0002
Trinity Zion
0002
0008
0008
เขาว่าผมฆ่าพีห่ ้ าง
นพดล
ใบไม้
100.00
ภาษาสาหรับจัดการขอมู
้ ล
Data Manipulation Language (DML)
SELECT member.name, book.book_name
FROM member, rental, book
WHERE member.member_id = rental.member_id
AND rental.book_id = book.book_id
member_id name
address r.member_id r.book_id book_id book_name
author
publisher
price
0001
Neo
Zion
0001
0002
0001
บ้านทรายทอง
สมชาย
ดอกหญ้า
250.00
0002
Trinity Zion
0002
0008
0008
เขาว่าผมฆ่าพี่หา้ ง นพดล
ใบไม้
100.00
ภาษาสาหรับจัดการขอมู
้ ล
Data Manipulation Language (DML)
member
rental r
book
member_id
name
address
member_id
book_id
book_id
book_name
author
publisher
price
0001
Neo
Zion
0001
0002
0001
คู่กรรม
ทมยันตี
ดอกหญ้า
250.00
0002
Trinity
Zion
0002
0008
0002
บ้ านทรายทอง
สมชาย
ดอกหญ้า
250.00
0003
Morpheus
Zion
0003
ดาวพระศุกร์
พลูโต
ดอกหญ้า
220.00
0004
Smith
Matrix
0004
พระเสาร์ แทรก
สมหญิง
ดอกหญ้า
300.00
0008
เขาว่าผมฆ่าพีห่ ้ าง
นพดล
ใบไม้
100.00
SELECT member.name, book.book_name
FROM member, rental, book
WHERE member.member_id = rental.member_id AND rental.book_id = book.book_id
ภาษาสาหรับจัดการขอมู
้ ล
Data Manipulation Language (DML)
SELECT member.name, book.book_name
FROM member, rental, book
WHERE member.member_id = rental.member_id
AND rental.book_id = book.book_id
name
book_name
Neo
บ้านทรายทอง
Trinity
เขาว่าผมฆ่าพี่หา้ ง
Selected Applications in IC, MIS, IS



IC
MIS
IS
Selected Applications in IC, MIS, IS

IC
Selected Applications in IC, MIS, IS

IC
Selected Applications in IC, MIS, IS

จำนวนผู ้ใชมื้ อถือแยกตำมอำยุ
IC
35
30
25
20
15
10
5
0
จำนวนผู ้ใชมื้ อถือแยกตำมอำยุ
20-30
40-50
Selected Applications in IC, MIS, IS

MIS

สารสนเทศทางธุรกิจ





การตลาด
การเงิน
การจัดการ
การผลิต
ทรัพยากรมนุ ษย ์
Selected Applications in IC, MIS, IS

MIS




E-Commerce
Web-Based Application
ERP, SCM, CRM
Data warehouse, Data mining, Web Services, EBusiness, E-Government
Selected Applications in IC, MIS, IS

IS


ห้องสมุด
ฐานขอมู
่ นใจ
้ ลสิ่ งทีส


สมุนไพร
ผลิตภัณฑพื
้ บาน
์ น
้
คาถาม
หัวข้อบรรยาย
 ข้อมูล/สารสนเทศ
 ระบบจัดการฐานข้อมูล
 สถาปั ตยกรรมฐานข้อมูล
 ER-Model
 หลักการออกแบบ
 SQL
 Relational Algebra
 Concurrency
วัตถุประสงครายครั
ง้
์
นักศึกษาสามารถ
 อธิ บายแนวคิดต่าง ๆ เกี่ยวกับฐานข้อมูลได้
 อธิ บายแนวทางการออกแบบ พัฒนา และ
จัดการฐานข้อมูลได้
Descargar

Project Vicinity