Đào Tạo PHP & Mysql

Học PHP Online - PHP Framework - Tự Học PHP

Lập Trình PHP Căn Bản

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

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ụ:


PHP Example


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.

PHP Example


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 (<tên_cột> <mô_tả>,…,<tên_cột_n>…..<mô_tả_n>)

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 <tên_cột> <thuộc_tính> AFTER <tên_cột>

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","lanna@yahoo.com","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="admin@qhonline.info" 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ùi Quốc Huy)
65900
Bạn vẫn chưa hiểu rõ vấn đề ?. Bạn vẫn còn nhiều điều thắc mắc ?. Bạn gặp lỗi khi thực hành mã lệnh trên ?. Hãy tham gia diễn đàn QHOnline.Info để nhận được sự giúp đỡ từ phía cộng đồng nhanh nhất. Đồng thời tải những tài liệu giá trị tại diễn đàn. Việc đăng ký là hoàn toàn miễn phí, hãy đăng ký ngay để chúng tôi giúp đỡ bạn nhé.

Ghi rõ nguồn từ website QHOnline.Info - Khi bạn phát hành lại thông tin từ website này

Phản hồi của bạn Tiếng Anh Telex VNI VIQR





php starter (12:42 22/01/2010)

rat chi la co ban .

Reply

harvard (19:25 17/03/2010)

tại sao anh không thao tác luôn trên Appserv luôn? thế có nhanh hơn không...

Reply

huy (22:40 25/04/2010)

Rất hay, mình đang học PHP và My SQL,
Bạn có thể cho mình hỏi cách tạo CSDL một cách cơ bản và khoa học nhất. có VD thì tốt quá...Thank trước.

Reply

Ngô Đình Long (09:50 29/04/2010)

Mình đang muốn học MY SQL ở TP HCM bạn có thể giúp mình học tốt đc k?
mình thấy bạn làm rất cơ bản và cẩn thận....
giúp mình nhé liên hệ qua mail nhé.Thanks

Reply

cuncom (20:34 08/05/2010)

hay thiệt đó

Reply

Vũ Quang Khánh (01:00 27/05/2010)

Mình đang lúng túng trong việc học đến phần Mysql, hiện tớ đang đọc giáo trình Lập trình web bằng PHP và Mysql của Minh Khai Pub nhưng hơi khó hiểu đến đoạn này nên rất mừng vì các bạn đã có được một bài giảng đơn giản và dễ hiểu!

Reply

ĐINH HÙNG (01:56 30/06/2010)

khong biet cai nay co ap dung voi sql server 200 dc ko nhỉ

Reply

pham thanh nhuan (13:33 28/08/2010)

Bạn có thể nào truy vấn đến nhiều bản ko vậy?

Reply

nguyen van sang (22:00 29/08/2010)

bai nay hay lam!

Reply

laothanhcachmang (09:14 22/09/2010)

cảm ơn bài viết rất chi tiết và dễ hiểu

Reply

nguyễn tấn duy (15:14 15/10/2010)

anh ơi mấy cái code về sql ở trên minh dùng chương trình soạn thảo nào để gõ vào vậy? notepad hay phần mềm nào khác, xin chỉ em cách dowload phần mềm về sử dụng. em cảm ơn!

Reply

tuyet (10:05 30/10/2010)

Cho m hoi: code viet tao va thao tac tren CSDL thi viet o dau vay? thanks.

Reply

Lê Thanh Hùng (16:33 23/11/2010)

Bạn có thể dùng vertrigo hoặc thuê 1 host nhỏ rồi Làm bài tập. Theo mình thì Thuê 1 host nhỏ làm cho quen ...

Reply

phạm ngọc Đạt (23:21 22/02/2011)

Anh viết rất hay và rất tỉ mỉ , em cũng đang trong thời gian nghiên cứu về php va sql . thank you anh nhé .mong anh cho vidu tỉ mỉ hơn nữa anh nhé .

Reply

tiensinh88 (07:22 07/03/2011)

thanks nhé, mình đang học mýql = cách dùng cmd, cáh này học từ căn bản.thanks

Reply

Keane (15:17 20/03/2011)

Anh ơi bài viết của anh quá hay và bổ ích luôn ý. Em tìm đỏ mắt mới ra 1 page chỉ dẫn căn bản thế này. Tks anh nhá.
Anh add nick Yahoo của em nhé: humorboy9x.
Rất mong được học hỏi anh :x

Reply

luu thuy ngan (11:11 09/04/2011)

anh cho em hoi sau khi tao bang xong. de yeu cau dat dieu kien cho mot thuoc tinh 'x' chi duoc mang cac gia tri thuoc ("a","b","c","d") thi fai lam the nao a?. em tu hoc va cam thay kho khan voi mon nay. rat mong anh giup do.

e thu dung alter table tenbang check (tenthuoctinh in (mien gia tri)) roi nhung ko duoc. e tim trong sach cung ko noi ve cau truc cua lenh check. anh giup e voi!

Reply

Đinh Hoàng Sanh (11:45 18/04/2011)

rất cơ bản nhưng mình muốn có một ví dụ cơ bản hơn không nếu vậy thì hay biết mấy ,thank mọi người nhiều php quá hay

Reply

nobita_1992 (11:51 19/05/2011)

thank nhe!!! học cơ bản tốt thì mới học nâng cao được!!!.....!

Reply

bùi tiến nam (21:48 25/05/2011)

quá hay thanhs you nhé

Reply

Chí Phèo (16:56 27/05/2011)

hi...thanks... Mình mới tập tành, có gì các bạn chỉ bảo mình với nha...

Reply

vuhoangminhtien (14:21 29/08/2011)

bai viet kha co ban va de hieu,nhung cach trinh bay con chua tot.

Reply

hoaluuli (21:05 06/09/2011)

bây jờ em mới bắt đầu tìm hiểu về PHP. Anh có thể gởi cho em tất cả các bài học mà anh đã đăng lên QHOnline.Info dcj ko ạ?Em cảm ơn anh Huy nhiều.

Reply

trangiaquyet (03:34 17/09/2011)

cam on ban rat nhieu.....

Reply

nguyễn đình lực (11:15 25/09/2011)

bạn đang hướng dẫn sử dụng sql bao nhiêu vây?
mà như vậy các bước đơn giản quá bạn cụ thể hơn đi

Reply

Nhớ Mãi (11:29 28/09/2011)

anh ơi, em rất thích cách trình bày vấn đề của anh. Anh có thể cho em mail để em tiện hỏi bài anh được không ạ. Em là sv nam 2 trường DH SPKT hưng yên, em bây giờ đang bắt đầu học về sql. Anh vui lòng giúp em được không ạ ?
Em cảm ơn anh nhiều ạ

Reply

Kenny (15:14 28/09/2011)

Chào em,

Cám ơn em đã yêu thích cách viết của anh. Rất vui lòng vì có thể giúp đỡ được mọi người.

Nếu trong quá trình tìm hiểu mà em gặp khó khăn gì. Cứ đặt câu hỏi và gửi về địa chỉ email sau: kenny@qhonline.info.

Anh sẽ cố gắng thu xếp thời gian và trả lời cho em sớm.

Chúc em có những giây phút thoải mãi trên QHOnline.Info nhé.

Best,

Nguyễn Hoàng Duy (15:23 19/10/2011)

thầy cho em hỏi: nếu mình có nhiều database trong mysql thì câu lệnh nào đề show ra hết database???

Reply

chau652 (11:05 20/10/2011)

em đang học đến phần PHP MySQL nhưng vẫn chưa hiểu rõ lắm. em vừa tìm được trang web của anh. thấy rất hay. anh có thể hướng dẫn giùm em được không?
em thường online qua nick yahoo. nick của em.
nuhoang_banggia652.
anh add nick của em nhé.

Reply

khacvinh (12:50 29/10/2011)

rất hay ,ngắn gọn ,dễ hiểu

rainy (20:59 13/12/2011)

minh dang lần mò học SQL các bác cho minh hỏi. SQL phai code trên cái gì thế

Reply

Ngô Thưởng (21:03 02/01/2012)

em đag làm php trên hosting.
Vậy hàm mysql_connect() config thế nào ạ ?
Hiện em để @mysql_connect('localhost','db_user','dbpass');
Nhưng khi chạy toàn báo :Access denied for user 'a2395802_vic'@'localhost' (using password: NO).
Mong thầy giải đáp giúp e với ạ

Reply

PHP MYSQL Online - Hoc PHP - Dao Tao PHP - Học PHP - CakePHP Framework - Lap Trinh PHP Can Ban - Lap Trinh PHP Nang Cao - PHP Framework - Tài liệu,Thư viện
Copyright 2007-2010 © QHOnline.Info | Powered By QHOnline Version 2.0 - XHTML Valid