Bài giảng Lập trình web - Chương 5: PHP và MySQL - Trần Công Án

Tóm tắt Bài giảng Lập trình web - Chương 5: PHP và MySQL - Trần Công Án: ...--------------+-------+ 5 rows in set (0.05 sec) mysql> +---------------------+------------------------------+-------------+------+-------+ | author | title | type | year | price | +---------------------+------------------------------+-------------+------+-------+ | Mark Twain | The Advent...-------------+ 5 rows in set (0.02 sec) mysql> select distinct type from classics; +-------------+ | type | +-------------+ | Fiction | | Non-Fiction | | Play | +-------------+ 3 rows in set (0.00 sec) mysql> +-------------+ | type | +-------------+ | Fiction | | Non-Fiction |...-------------------+-------------+------+--------+ | author | title | type | year | price | +-----------------+------------------------------+-------------+------+--------+ | Mark Twain | The Adventures of Tom Sawyer | Fiction | 1876 | 100.00 | | Jane Austen | Pride and Prejudice | Fiction | 181...

pdf50 trang | Chia sẻ: havih72 | Lượt xem: 232 | Lượt tải: 0download
Nội dung tài liệu Bài giảng Lập trình web - Chương 5: PHP và MySQL - Trần Công Án, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
CT] )
I Các hàm tổng hợp tính toán trên một tập các giá trị và trả về một
giá trị đơn.
I Các hàm thông dụng: AVG, COUNT, MAX, MIN, SUM
TS. Trần Công Án (Khoa CNTT&TT) [CT428] Chương 5.1 – MySQL 32
[CT428] Chương 5.1 – MySQL
Các lệnh thao tác trên dữ liệu (DML)
Tổng hợp dữ liệu (Summarizing/Aggregating data)
Tổng Hợp Dữ Liệu – Ví Dụ
SELECT COUNT(*) NoOfStudent
FROM student
SELECT COUNT(*)
FROM student
WHERE birthday IS NULL
SELECT MAX(price), MIN(price), AVG(price)
FROM classics
SELECT COUNT(type), COUNT(DISTINCT type)
FROM classics;
+-------------+
| NoOfStudent |
+-------------+
| 10 |
+-------------+
1 row in set (0.00 sec)
mysql> 
+----------+
| COUNT(*) |
+----------+
| 1 |
+----------+
1 row in set (0.03 sec)
mysql> 
+------------+------------+------------+
| MAX(price) | MIN(price) | AVG(price) |
+------------+------------+------------+
| 100.00 | 54.90 | 79.040001 |
+------------+------------+------------+
1 row in set (0.00 sec)
mysql> 
+-------------+----------------------+
| COUNT(type) | COUNT(DISTINCT type) |
+-------------+----------------------+
| 5 | 3 |
+-------------+----------------------+
1 row in set (0.00 sec)
mysql> 
TS. Trần Công Án (Khoa CNTT&TT) [CT428] Chương 5.1 – MySQL 33
[CT428] Chương 5.1 – MySQL
Các lệnh thao tác trên dữ liệu (DML)
Nhóm/Gộp dữ liệu (Data grouping)
Nhóm Dữ Liệu – GROUP BY & HAVING
I Có thể nhóm dữ liệu dựa vào giá trị 1 trường hay một biểu thức.
I Cú pháp: GROUP BY | [HAVING ]
I Mệnh đề HAVING dùng để lọc dữ liệu sau khi nhóm.
I Thường kết hợp với các hàm tổng hợp dữ liệu để tổng hợp dữ liệu
cho từng nhóm.
I Chú ý: Nếu câu truy vấn có mệnh đề WHERE, việc nhóm gộp dữ liệu
chỉ được thực hiện trên tập dữ liệu thỏa điều kiện mệnh đề WHERE.
TS. Trần Công Án (Khoa CNTT&TT) [CT428] Chương 5.1 – MySQL 34
[CT428] Chương 5.1 – MySQL
Các lệnh thao tác trên dữ liệu (DML)
Nhóm/Gộp dữ liệu (Data grouping)
Nhóm Dữ Liệu – GROUP BY & HAVING
SELECT type, COUNT(title), max(price)
FROM classics
GROUP BY type
SELECT type, COUNT(title)
FROM classics
GROUP BY type
HAVING count(title)>2
SELECT type, COUNT(*)
FROM classics
WHERE year>1800
GROUP BY type
+-------------+--------------+------------+
| type | COUNT(title) | max(price) |
+-------------+--------------+------------+
| Fiction | 3 | 100.00 |
| Non-Fiction | 1 | 60.50 |
| Play | 1 | 79.90 |
+-------------+--------------+------------+
3 rows in set (0.06 sec)
mysql> select * from classics;
+---------------------+------------------------------+-------------+------+--------+
| author | title | type | year | price |
+---------------------+------------------------------+-------------+------+--------+
| Mark Twain | The Adventures of Tom Sawyer | Fiction | 1876 | 100.00 |
| Jane Austen | Pride and Prejudice | Fiction | 1811 | 99.90 |
| Charles Darwin | The Origin of Species | Non-Fiction | 1856 | 60.50 |
| Charles Dickens | The Old Curiosity Shop | Fiction | 1841 | 54.90 |
| William Shakespeare | Romeo and Juliet | Play | 1594 | 79.90 |
+---------------------+------------------------------+-------------+------+--------+
5 rows in set (0.06 sec)
mysql> select * from student;
+---------+----------+------------+----------+---------------------+
| id | name | birthday | province | enroll |
+---------+----------+------------+----------+---------------------+
| 0123400 | Nobisuke | NULL | 4 | 2000-09-01 00:00:00 |
| 0123401 | Tamako | 1971-12-23 | 4 | 2000-09-01 00:00:00 |
| 0123456 | Tom | 1996-01-15 | 1 | 2014-02-20 00:00:00 |
| 0123457 | Jerry | 2000-01-15 | 1 | 2014-02-21 15:19:36 |
| 0123458 | Doremon | 2112-02-20 | 2 | 2014-02-21 23:46:50 |
| 0123459 | Nobita | 1992-01-02 | 2 | 2014-02-21 23:46:50 |
| 0123460 | Xuka | 1992-01-03 | 3 | 2014-02-21 23:46:50 |
| 0123461 | Chaien | 1980-05-30 | 3 | 2014-02-21 23:46:50 |
| 0123462 | Dekhi | 1993-07-18 | 3 | 2014-02-21 23:46:50 |
| 0123463 | Xeko | 1992-01-16 | 3 | 2014-02-21 23:46:50 |
+---------+----------+------------+----------+---------------------+
10 rows in set (0.10 sec)
mysql> select * from classics where year>1950;
Empty set (0.07 sec)
mysql> select * from classics where year>'1950';
Empty set (0.05 sec)
mysql> select * from classics where year>1800;
+-----------------+------------------------------+-------------+------+--------+
| author | title | type | year | price |
+-----------------+------------------------------+-------------+------+--------+
| Mark Twain | The Adventures of Tom Sawyer | Fiction | 1876 | 100.00 |
| Jane Austen | Pride and Prejudice | Fiction | 1811 | 99.90 |
| Charles Darwin | The Origin of Species | Non-Fiction | 1856 | 60.50 |
| Charles Dickens | The Old Curiosity Shop | Fiction | 1841 | 54.90 |
+-----------------+------------------------------+-------------+------+--------+
4 rows in set (0.01 sec)
mysql> SELECT type, COUNT(*)
 -> FROM classics
 -> WHERE year>1800
 -> GROUP BY type 
 -> ;
+-------------+----------+
| type | COUNT(*) |
+-------------+----------+
| Fiction | 3 |
| Non-Fiction | 1 |
+-------------+----------+
2 rows in set (0.00 sec)
mysql> 
+---------+--------------+
| type | COUNT(title) |
+---------+--------------+
| Fiction | 3 |
+---------+--------------+
1 row in set (0.27 sec)
mysql> SELECT type, COUNT(title), max(price)
 -> FROM cl ssics
 > GROUP BY type
 -> 
 -> ;
+-------------+--------------+------------+
| type | COUNT(title) | max(price) |
+-------------+--------------+------------+
| Fiction | 3 | 100.00 |
| Non-Fiction | 1 | 60.50 |
| Play | 1 | 79.90 |
+-------------+--------------+------------+
3 rows in set (0.06 sec)
mysql> select * from classics;
+---------------------+-- -- ------------------- ----+-------------+------+--------+
author | title | type | year | price |
+---------------------+-- -- ------------------- ----+-------------+------+--------+
| Mark Twain | The Adventures of Tom Sawyer | Fiction | 1876 | 100.00 |
| Jane Austen | Pride and Prejudice | Fiction | 1811 | 99.90 |
| Charles Darwin | The Origin of Species | Non-Fiction | 1856 | 60.50 |
| Charles Dickens | The Old Curiosity Shop | Fiction | 1841 | 54.90 |
| William Shakespeare | Romeo and Juliet | Play | 1594 | 79.90 |
+---------------------+------------------------------+-------------+------+--------+
5 rows in set (0.06 sec)
mysql> select * from student;
+---------+----------+------------+----------+---------------------+
| id | name | birthday | province | enroll |
-----+ - -+--- +----- +- ----- - --+
0123400 | Nobisuke | NULL | 4 | 2000-09-01 00:00:00 |
0123401 | Tamako | 1971-12-23 | 4 | 2000-09-01 00:00:00 |
0123456 | Tom | 1996-01-15 | 1 | 2014-02-20 00:00:00 |
0123457 | J rry | 2000-01-15 | 1 | 2014-02-21 15: 9:36 |
| 0123458 | Doremon | 2112-02-20 | 2 | 2014-02-21 23:46:50 |
| 0123459 | Nobita | 1992-01-02 | 2 | 2014-02-21 23:46:50 |
| 0123460 | Xuka | 1992-01-03 | 3 | 2014-02-21 23:46:50 |
| 0123461 | Chaien | 1980-05-30 | 3 | 2014-02-21 23:46:50 |
| 0123462 | Dekhi | 1993-07-18 | 3 | 2014-02-21 23:46:50 |
| 0123463 | Xeko | 1992-01-16 | 3 | 2014-02-21 23:46:50 |
+---------+----------+------------+----------+---------------------+
10 rows in set (0.10 sec)
mysql> select * from classics where year>1950;
Empty set (0.07 sec)
mysql> select * from classics where year>'1950';
Empty set (0.05 sec)
mysql> select * from classics where year>1800;
+-----------------+------------------------------+-------------+------+--------+
| author | title | type | year | price |
+-----------------+------------------------------+-------------+------+--------+
| Mark Twain | The Adventures of Tom Sawyer | Fiction | 1876 | 100.00 |
| Jane Austen | Pride and Prejudice | Fiction | 1811 | 99.90 |
| Charles Darwin | The Origin of Species | Non-Fiction | 1856 | 60.50 |
| Charles Dickens | The Old Curiosity Shop | Fiction | 1841 | 54.90 |
+-----------------+------------------------------+-------------+------+--------+
4 rows in set (0.01 sec)
mysql> SELECT type, COUNT(*)
 -> FROM classics
 -> WHERE year>1800
 -> GROUP BY type 
 -> ;
+-------------+----------+
| type | COUNT(*) |
+-------------+----------+
| Fiction | 3 |
| Non-Fiction | 1 |
+-------------+----------+
+-------------+----------+
| type | COUNT(*) |
+-------------+----------+
| Fiction | 3 |
| Non-Fiction | 1 |
+-------------+----------+
2 rows in set (0.00 sec)
mysql> 
TS. Trần Công Án (Khoa CNTT&TT) [CT428] Chương 5.1 – MySQL 35
[CT428] Chương 5.1 – MySQL
Các lệnh thao tác trên dữ liệu (DML)
Kết nối dữ liệu giữa các bảng (Join)
Nối Kết Dữ Liệu – JOIN | WHERE
I Join dùng để truy vấn dữ liệu từ nhiều table, dựa vào mối quan hệ
luận lý giữa chúng (giá trị của các trường).
I Các cách kết nối:
I NATURAL JOIN : tự động kết nối table trong mệnh đề FROM và
NATURAL JOIN dựa trên các trường cùng tên.
I JOIN ON : kết nối table ở mệnh đề FROM và JOIN
dựa trên các trường chỉ định trong mệnh đề ON.
I FROM WHERE : kết nối các table trong
mệnh đề FROM sử dụng điều kiện trong mệnh đề WHERE.
I Các loại nối kết: INNER JOIN, (LEFT|RIGHT)OUTER JOIN
TS. Trần Công Án (Khoa CNTT&TT) [CT428] Chương 5.1 – MySQL 36
[CT428] Chương 5.1 – MySQL
Các lệnh thao tác trên dữ liệu (DML)
Kết nối dữ liệu giữa các bảng (Join)
Dữ Liệu Minh Họa
I Tạo thêm table province có cấu trúc và dữ liệu như sau:
+----------+------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+------------------+------+-----+---------+-------+
| province | int(10) unsigned | NO | PRI | 0 | |
| name | varchar(100) | YES | | NULL | |
+----------+------------------+------+-----+---------+-------+
2 rows in set (0.07 sec)
mysql> 
+----------+----------+
| province | name |
+----------+----------+
| 1 | Tokyo |
| 2 | Kobe |
| 3 | Kagawa |
| 4 | Hirosima |
| 5 | Osaka |
+----------+----------+
5 rows in set (0.00 sec)
mysql> select * from student;
+---------+----------+------------+----------+---------------------+
| id | name | birthday | province | enroll |
+---------+----------+------------+----------+---------------------+
| 0123400 | Nobisuke | NULL | 4 | 2000-09-01 00:00:00 |
| 0123401 | Tamako | 1971-12-23 | 4 | 2000-09-01 00:00:00 |
| 0123456 | Tom | 1996-01-15 | 1 | 2014-02-20 00:00:00 |
| 0123457 | Jerry | 2000-01-15 | 1 | 2014-02-21 15:19:36 |
| 0123458 | Doremon | 2112-02-20 | 0 | 2014-02-21 23:46:50 |
| 0123459 | Nobita | 1992-01-02 | 2 | 2014-02-21 23:46:50 |
| 0123460 | Xuka | 1992-01-03 | 3 | 2014-02-21 23:46:50 |
| 0123461 | Chaien | 1980-05-30 | 3 | 2014-02-21 23:46:50 |
| 0123462 | Dekhi | 1993-07-18 | 3 | 2014-02-21 23:46:50 |
| 0123463 | Xeko | 1992-01-16 | 3 | 2014-02-21 23:46:50 |
+---------+----------+------------+----------+---------------------+
10 rows in set (0.00 sec)
mysql> 
TS. Trần Công Án (Khoa CNTT&TT) [CT428] Chương 5.1 – MySQL 37
[CT428] Chương 5.1 – MySQL
Các lệnh thao tác trên dữ liệu (DML)
Kết nối dữ liệu giữa các bảng (Join)
Kết Nối Dữ Liệu – INNER JOIN
SELECT id, student.name,
province.name
FROM student
JOIN province
ON student.province =
province.province
SELECT id, s.name, p.name
FROM student AS s, province AS p
WHERE s.province = p.province
FTable	
   JTable	
  
+---------+----------+----------+
| id | name | name |
+---------+----------+----------+
| 0123456 | Tom | Tokyo |
| 0123457 | Jerry | Tokyo |
| 0123459 | Nobita | Kobe |
| 0123460 | Xuka | Kagawa |
| 0123461 | Chaien | Kagawa |
| 0123462 | Dekhi | Kagawa |
| 0123463 | Xeko | Kagawa |
| 0123400 | Nobisuke | Hirosima |
| 0123401 | Tamako | Hirosima |
+---------+----------+----------+
9 rows in set (0.01 sec)
mysql> 
TS. Trần Công Án (Khoa CNTT&TT) [CT428] Chương 5.1 – MySQL 38
[CT428] Chương 5.1 – MySQL
Các lệnh thao tác trên dữ liệu (DML)
Kết nối dữ liệu giữa các bảng (Join)
Kết Nối Dữ Liệu – LEFT OUTER JOIN
SELECT id, s.name AS SName, p.name
AS PName
FROM student AS s
LEFT OUTER JOIN province as p
ON s.province = p.province
FTable	
   JTable	
  
+---------+----------+----------+
| id | SName | PName |
+---------+----------+----------+
| 0123456 | Tom | Tokyo |
| 0123457 | Jerry | Tokyo |
| 0123459 | Nobita | Kobe |
| 0123460 | Xuka | Kagawa |
| 0123461 | Chaien | Kagawa |
| 0123462 | Dekhi | Kagawa |
| 0123463 | Xeko | Kagawa |
| 0123400 | Nobisuke | Hirosima |
| 0123401 | Tamako | Hirosima |
| 0123458 | Doremon | NULL |
+---------+----------+----------+
10 rows in set (0.02 sec)
mysql> 
TS. Trần Công Án (Khoa CNTT&TT) [CT428] Chương 5.1 – MySQL 39
[CT428] Chương 5.1 – MySQL
Các lệnh thao tác trên dữ liệu (DML)
Kết nối dữ liệu giữa các bảng (Join)
Kết Nối Dữ Liệu – RIGHT OUTER JOIN
SELECT id, s.name AS SName, p.name
AS PName
FROM student AS s
RIGHT OUTER JOIN province as p
ON s.province = p.province
FTable	
   JTable	
  
+---------+----------+----------+
| id | SName | PName |
+---------+----------+----------+
| 0123400 | Nobisuke | Hirosima |
| 0123401 | Tamako | Hirosima |
| 0123456 | Tom | Tokyo |
| 0123457 | Jerry | Tokyo |
| 0123459 | Nobita | Kobe |
| 0123460 | Xuka | Kagawa |
| 0123461 | Chaien | Kagawa |
| 0123462 | Dekhi | Kagawa |
| 0123463 | Xeko | Kagawa |
| NULL | NULL | Osaka |
+---------+----------+----------+
10 rows in set (0.00 sec)
mysql> 
TS. Trần Công Án (Khoa CNTT&TT) [CT428] Chương 5.1 – MySQL 40
[CT428] Chương 5.1 – MySQL
Các lệnh thao tác trên dữ liệu (DML)
Kết nối dữ liệu giữa các bảng (Join)
Kết Nối Dữ Liệu – Full OUTER JOIN (UNION)
SELECT id, s.name AS SName, p.name
AS PName
FROM student AS s
LEFT OUTER JOIN province as p
ON s.province = p.province
UNION
SELECT id, s.name AS SName, p.name
AS PName
FROM student AS s
RIGHT OUTER JOIN province as p
ON s.province = p.province
FTable	
   JTable	
  
+---------+----------+----------+
| id | SName | PName |
+---------+----------+----------+
| 0123456 | Tom | Tokyo |
| 0123457 | Jerry | Tokyo |
| 0123459 | Nobita | Kobe |
| 0123460 | Xuka | Kagawa |
| 0123461 | Chaien | Kagawa |
| 0123462 | Dekhi | Kagawa |
| 0123463 | Xeko | Kagawa |
| 0123400 | Nobisuke | Hirosima |
| 0123401 | Tamako | Hirosima |
| 0123458 | Doremon | NULL |
| NULL | NULL | Osaka |
+---------+----------+----------+
11 rows in set (0.24 sec)
mysql> 
TS. Trần Công Án (Khoa CNTT&TT) [CT428] Chương 5.1 – MySQL 41
[CT428] Chương 5.1 – MySQL
Các lệnh thao tác trên dữ liệu (DML)
Các Câu Truy Vấn Lồng Nhau
Các Câu Truy Vấn Lồng Nhau
I Kết quả một câu truy vấn có thể được sử dụng trong mệnh đề điều
kiện của một câu truy vấn khác.
SELECT id, name, province
FROM student
WHERE province NOT IN
(SELECT province FROM province)
SELECT id, name, birthday
FROM student
WHERE birthday =
(SELECT MAX(birthday) FROM student)
+---------+---------+----------+
| id | name | province |
+---------+---------+----------+
| 0123458 | Doremon | 0 |
+---------+---------+----------+
1 row in set (0.05 sec)
mysql> SELECT id, s.name AS SName, s.province
 -> FROM student AS s
 -> LEFT OUTER JOIN province as p
 -> ON s.province = p.province
 -> WHERE p.province IS NULL
 -> ;
+---------+---------+----------+
| id | SName | province |
+---------+---------+----------+
| 0123458 | Doremon | 0 |
+---------+---------+----------+
1 row in set (0.09 sec)
mysql> 
+---------+---------+------------+
| id | name | birthday |
+---------+---------+------------+
| 0123458 | Doremon | 2112-02-20 |
+---------+---------+------------+
1 row in set (0.00 sec)
mysql> 
TS. Trần Công Án (Khoa CNTT&TT) [CT428] Chương 5.1 – MySQL 42
[CT428] Chương 5.1 – MySQL
Các lệnh thao tác trên dữ liệu (DML)
Giới hạn số mẩu tin trả về
Giới Hạn Số Mẩu Tin Trả Về – LIMIT
I Cú pháp: LIMIT [offset,] 
(Chọn tối đa number of rows mẩu tin, tính từ offset)
I Thường được dùng trong phân trang kết quả truy vấn.
SELECT id, name, birthday
FROM student
LIMIT 2
SELECT id, name, birthday
FROM student
LIMIT 2, 2
+---------+----------+------------+
| id | name | birthday |
+---------+----------+------------+
| 0123400 | Nobisuke | NULL |
| 0123401 | Tamako | 1971-12-23 |
+---------+----------+------------+
2 rows in set (0.02 sec)
mysql> select id, name, birthday from student LIMIT 2,2;
+---------+-------+------------+
| id | name | birthday |
+---------+-------+------------+
| 0123456 | Tom | 1996-01-15 |
| 0123457 | Jerry | 2000-01-15 |
+---------+-------+------------+
2 rows in set (0.00 sec)
mysql> 
+---------+-------+------------+
| id | name | birthday |
+---------+-------+------------+
| 0123456 | Tom | 1996-01-15 |
| 0123457 | Jerry | 2000-01-15 |
+---------+-------+------------+
2 rows in set (0.00 sec)
mysql> 
TS. Trần Công Án (Khoa CNTT&TT) [CT428] Chương 5.1 – MySQL 43
[CT428] Chương 5.1 – MySQL
Các lệnh thao tác trên dữ liệu (DML)
Cập nhật dữ liệu của table – UPDATE
Cập Nhật Dữ Liệu Của Table – UPDATE
I Cú pháp:
UPDATE 
SET = [, = ...]>
[WHERE ]
I Chú ý: Nếu không có điều kiện, tất cả các mẫu tin sẽ được c/nhật.
UPDATE classics
SET price = price*0.9
UPDATE classics
SET price = price*0.9
WHERE type = 'Fiction'
+------------------------------+-------+
| title | price |
+------------------------------+-------+
| The Adventures of Tom Sawyer | 90.00 |
| Pride and Prejudice | 89.91 |
| The Origin of Species | 54.45 |
| The Old Curiosity Shop | 49.41 |
| Romeo and Juliet | 71.91 |
+------------------------------+-------+
5 rows in set (0.00 sec)
mysql> 
+------------------------------+-------+
| title | price |
+------------------------------+-------+
| The Adventures of Tom Sawyer | 81.00 |
| Pride and Prejudice | 80.92 |
| The Origin of Species | 54.45 |
| The Old Curiosity Shop | 44.47 |
| Romeo and Juliet | 71.91 |
+------------------------------+-------+
5 rows in set (0.00 sec)
mysql> 
TS. Trần Công Án (Khoa CNTT&TT) [CT428] Chương 5.1 – MySQL 44
[CT428] Chương 5.1 – MySQL
Các lệnh thao tác trên dữ liệu (DML)
Xóa dữ liệu của table – DELETE
Xóa Dữ Liệu Của Table – DELETE
I Cú pháp:
DELETE FROM [WHERE ]
I Ví dụ:
DELETE FROM classics WHERE year < 1800
+-----------------+------------------------------+------+
| author | title | year |
+-----------------+------------------------------+------+
| Mark Twain | The Adventures of Tom Sawyer | 1876 |
| Jane Austen | Pride and Prejudice | 1811 |
| Charles Darwin | The Origin of Species | 1856 |
| Charles Dickens | The Old Curiosity Shop | 1841 |
+-----------------+------------------------------+------+
4 rows in set (0.00 sec)
mysql> I Chú ý: Nếu không có điều kiện, tất cả các mẫu tin sẽ bị xóa.
TS. Trần Công Án (Khoa CNTT&TT) [CT428] Chương 5.1 – MySQL 45
[CT428] Chương 5.1 – MySQL
Một số công cụ quản lý MySQL miễn phí
Một Số Công Cụ Quản Lý MySQL
MySQL Workbench,
HeidiSQL, Toad,
Eclipse (+plugin),
myPHPQdmin, . . .
TS. Trần Công Án (Khoa CNTT&TT) [CT428] Chương 5.1 – MySQL 46
[CT428] Chương 5.1 – MySQL
Một số công cụ quản lý MySQL miễn phí
Một Số Công Cụ Quản Lý MySQL
TS. Trần Công Án (Khoa CNTT&TT) [CT428] Chương 5.1 – MySQL 47
[CT428] Chương 5.1 – MySQL
Một số công cụ quản lý MySQL miễn phí
Một Số Công Cụ Quản Lý MySQL
TS. Trần Công Án (Khoa CNTT&TT) [CT428] Chương 5.1 – MySQL 48
[CT428] Chương 5.1 – MySQL
Các nội dung khác liên quan đến MySQL
Một Số Nội Dung Khác Liên Quan Đến MySQL
I Sử dụng ràng buộc (constraints): foreign key, cascade
update/delete, . . .
I Chỉ định bảng mã (character set), qui tắc sắp xếp (collation) cho
dữ liệu của các table.
I Tạo các thủ tục/hàm (stored procedure/function) và view.
I Sử dụng bẫy sự kiện (trigger).
I Quản lý quyền (prililege), bảo mật (security).
I Sao lưu (backup) và phục hồi (recover) dữ liệu.
TS. Trần Công Án (Khoa CNTT&TT) [CT428] Chương 5.1 – MySQL 49

File đính kèm:

  • pdfbai_giang_lap_trinh_web_chuong_5_php_va_mysql_tran_cong_an.pdf