Lập trình web

Bài 6: Cơ bản về ngôn ngữ SQL và Mysql

Chia sẻ nhanh

Mysql là hệ quản trị dữ liệu miễn phí, được tích hợp sử dụng chung với apache, PHP. Chính yếu tố phát triển trong cộng đồng mã nguồn mở nên mysql đã qua rất nhiều sự hỗ trợ của những lập trình viên yêu thích mã nguồn mở. Mysql cũng có cùng một cách truy xuất và mã lệnh tương tự với ngôn ngữ SQL.


Nhưng Mysql không bao quát toàn bộ những câu truy vấn cao cấp như SQL. Về bản chất Mysql chỉ đáp ứng việc truy xuất đơn giản trong quá trình vận hành của website nhưng hầu hết có thể giải quyết các bài toán trong PHP.
1- Cách khởi động và sử dụng MYSQL.
Chúng ta sử dụng command như sau:

Mysql –hname –uuser –ppass

Để truy cập vào cơ sở dữ liệu.
Hoặc sử dụng bộ appserv để vào nhanh hơn theo đường dẫn sau:
Start/ Appserv/ Mysql command Line client
Sau đó nhập password mà chúng ta đã đặt vào.
2- Những định nghĩa cơ bản:
a) Định nghĩa cơ sở dữ liệu, bảng, cột:
Cơ sở dữ liệu: là tên của cơ sở dữ liệu chúng ta muốn sử dụng
Bảng: Là 1 bảng giá trị nằm trong cơ sở dữ liệu.
Cột là 1 giá trị nằm trong bảng. Dùng để lưu trữ các trường dữ liệu.
Thuộc tính
Ví dụ:

Bảng User
user_id 1234
first_name Nguyen
last_name Quang Huy
username huynq
password 123456
email This email address is being protected from spambots. You need JavaScript enabled to view it.
date 1985-09-09 13:20:10

Như vậy ta có thể hiểu như sau:
1 cơ sở dữ liệu có thể bao gồm nhiều bảng.
1 bảng có thể bao gồm nhiều cột
1 cột có thể có hoặc không có những thuộc tính.
b) Định nghĩa 1 số thuật ngữ:
NULL : Giá trị cho phép rỗng.
AUTO_INCREMENT : Cho phép giá trị tăng dần (tự động).
UNSIGNED : Phải là số nguyên dương
PRIMARY KEY : Cho phép nó là khóa chính trong bảng.
c)Loại dữ liệu trong Mysql:
Ở đây chúng tả chỉ giới thiệu 1 số loại thông dụng: 1 số dữ liệu khác có thể tham khảo trên trang chủ của mysql.

Kiểu dữ liệu Mô tả
Char Định dạng text có chiều dài từ 0->255
Varchar Định dạng text có chiều dài từ 0->255
Text Định dạng text có chiều dài từ 0->65535
Longtext Định dạng text có chiều dài từ 0->4294967215
INT Định dạng số có chiều dài từ 0->4294967215
Float Định dạng số thập phân có chiều dài nhỏ
Double Định dạng số thập phân có chiều dài lớn
Date Định dạng thời gian theo định dạng: YYYY-MM-DD
DateTime Định dạng thời gian theo định dạng: YYYY-MM-DD

3- Những cú pháp cơ bản:
Cú pháp tạo 1 cơ sở dữ liệu:

CREATE DATABASE tên_cơ_sở_dữ_liệu;
Cú pháp sử dụng cơ sở dữ liệu: Use tên_database;
Cú pháp thoát khỏi cơ sở dữ liệu: Exit

Cú pháp tạo 1 bảng trong cơ sở dữ liệu:

CREATE TABLE user ( ,…,…..)

Ví dụ:

mysql> create table user(user_id INT(15) UNSIGNED NOT NULL AUTO_INCREMENT, username VARCHAR(255) NOT NULL, password CHAR(50) NOT NULL, email VARCHAR(200) NOT NULL, PRIMARY KEY (user_id));

Hiển thị có bao nhiều bảng: show tables;
Hiển thị có bao nhiêu cột trong bảng: show columns from table;
Thêm 1 cột vào bảng :

ALTER TABLE tên_bảng ADD   AFTER 

Ví dụ:

mysql> alter table user add sex varchar(200) NOT NULL after email;

4- Thêm giá trị vào bảng:
Cú pháp:

INSERT INTO Tên_bảng(tên_cột) VALUES(Giá_trị_tương_ứng);

Ví dụ:

mysql> insert into user(username,password,email,sex,home) values("Lanna","12345","This email address is being protected from spambots. You need JavaScript enabled to view it.","F","www.abc.com");

5- Truy xuất dữ liệu:
Cú pháp:

SELECT tên_cột FROM Tên_bảng;

Ví dụ:

mysql> select user_id,username from user;

6- Truy xuất dữ liệu với điều kiện:
Cú pháp:

SELECT tên_cột FROM Tên_bảng WHERE điều kiện;

Ví dụ:

mysql> select user_id,username from user where user_id=2;

7- Truy cập dữ liệu và sắp xếp theo trình tự
Cú pháp:

SELECT tên_cột FROM Tên_bảng
WHERE điều kiện (có thể có where hoặc không)
ORDER BY Theo quy ước sắp xếp.

Trong đó quy ước sắp xếp bao gồm hai thông số là ASC (từ trên xuống dưới), DESC (từ dưới lên trên).

mysql> select user_id,username from user order by username ASC ;

8- Truy cập dữ liệu có giới hạn :
Cú pháp:

SELECT tên_cột FROM Tên_bảng
WHERE điều kiện (có thể có where hoặc không)
LIMIT vị trí bắt đầu, số record muốn lấy ra

Ví dụ:

mysql> select user_id,username from user order by username ASC limit 0,10 ;

9- Cập nhật dữ liệu trong bảng:
Cú pháp:

Update tên_bảng set tên_cột=Giá trị mới
WHERE (điều kiện).

Nếu không có ràng buộc điều kiện, chúng sẽ cập nhật toàn bộ giá trị mới của các record trong bảng.
Ví dụ:

mysql> update user set email="This email address is being protected from spambots. You need JavaScript enabled to view it." where user_id=1 ;

10- Xóa dữ liệu trong bảng:
Cú pháp:

DELETE FROM tên_bảng WHERE (điều kiện).

Nếu không có ràng buộc điều kiện, chúng sẽ xó toàn bộ giá trị của các record trong bảng.
Ví dụ

mysql>delete from user where user_id=1 ;

 

Bình luận

TOP

Bạn đã sẵn sàng chuyển ý tưởng tuyệt vời
của bạn thành hiện thực?