Kiến tha lâu đầy tổ

Các kiến thức được tích lũy theo thời gian. Hãy kiên trì và chăm chỉ.

Tổng hợp kiến thức kỹ năng công nghệ học được

Các nội dung đang được tích lũy và bổ sung thêm theo thời gian

Tin học văn phòng

Tổng hợp các kỹ năng tin học văn phòng hỗ trợ trong công việc như Word - Excel - Power Point

Kiến thức về cơ sở dữ liệu

Thao tác với cơ sở dữ liệu, ngôn ngữ SQL trên SQL Server và MySQL

Kiến thức cơ bản về lập trình Web

Một số khái niệm cơ bản về lập trình web

Thứ Tư, 6 tháng 11, 2013

Bài 5 – Thêm một bản ghi(record) mới vào bảng trong MySQL

Sau khi đã tạo ra một bảng CSDL, chúng ta cần thêm dữ liệu cho nó. Các dữ liệu được lưu vào được gọi là các bản ghi(record).

Cú pháp để thêm một bản ghi vào bảng trong CSDL

INSERT INTO tênbảng (têncột) VALUES (giátrịtươngứng)
B1: Khởi động WAMP, mở trình duyệt nhập đường dẫn http://localhost/phpmyadmin/
1
B2: Click chọn CSDL helloworld trong cột bên tay trái
1
1
B3: Chọn thẻ SQL
1
B5: Nhập đoạn lệnh INSERT để thêm bản ghi
1
Do cột id chúng ta để là auto_increment nên mỗi khi nhập dữ liệu mới, nó sự tự động đánh số, bắt đầu từ số 1 nên chúng ta không cần nhập dữ liệu cho cột id.
B6: Click Go
1
B7: Click vào tên bảng instance trong cột bên tay trái
1

Thứ Ba, 5 tháng 11, 2013

Bài 4 – Thêm bảng vào cơ sở dữ liệu trong MySQL



Trong bất kỳ một cơ sở dữ liệu nào thì bảng là phần tối quan trọng trong nó. Bảng là nơi chứa các đối tượng được lưu trữ trong cơ sở dữ liệu(bao gồm các trường(cột) và các bản ghi(dòng)).

Cú pháp câu lệnh để tạo bảng

CREATE TABLE tênbảng ( têncột cácthuộctínhcủacột );
Trong đó các thuộc tính của cột bao gồm
Tên thuộc tínhMô tả
Type(bắt buộc)Kiểu dữ liệu cho các dữ liệu được lưu vào cột đó, ví dụ như INT, VARCHAR, DATETIME,…
Length/ValuesĐộ dài ký tự tối đa mà dữ liệu được nhập vào
DefaultGiá trị mặc định, cho dù nó có dữ liệu mới được nhập vào hay không.
CollationTiêu chuẩn đối chiếu thông tin nhập bằng văn bản. Nếu các bạn muốn bản ghi của mình lưu được tiếng Việt thì cần để cột Collation này có giá trị là utf8_unicode_ci
AttributesThuộc tính của cột. Nếu là cột ID thì nên để thuộc tính này là unsigned(không lấy số 0 và số âm)
NullĐây là thuộc tính của cột trong bảng cho phép chấp nhận giá trị NULL hay không. Thường thì chúng ta sẽ để là NOT NULL
IndexTạo chỉ mục trong bảng. Nếu là cột ID thì sẽ chọn cái này và để giá trị là PRIMARY(khóa chính)
A_I(AUTO_INCREMENT)Cho phép cột(dạng số) có giá trị tăng tự động. Nếu là cột ID thì bắt buộc phải chọn
CommentsChú thích cho cột
B1: Khởi động WAMP, mở trình duyệt, nhập đường dẫn http://localhost/phpmyadmin/
1
B2: Chọn thẻ SQL
1
B3: Chọn cơ sở dữ liệu
Trước khi tạo bảng cho một cơ sở dữ liệu, chúng ta cần phải chọn cơ sở dữ liệu đó đã. Cú pháp câu lệnh chọn cơ sở dữ liệu:
USE têncơsởdữliệu
1
Tuy nhiên với phpMyAdmin, bạn đơn giản chỉ cần click vào tên cơ sở dữ liệu ở cột bên tay trái. Và chúng ta sẽ chọn cách này
1
B4: Chọn thẻ SQL. Trong trường hợp này, sau khi chúng ta đã click chọn cơ sở dữ liệu helloworld thì mọi câu lệnh SQL sẽ đều chỉ có tác dụng trong cơ sở dữ liệu này
1
B5: Chúng ta sẽ tạo bảng instance với 3 cột là: id, title và description
1
B6: Click Go, tên bảng instance sẽ hiện ra trong cột bên tay trái
1
B7: Click vào tên bảng instance trong cột bên tay trái, kết quả
1

Thứ Hai, 4 tháng 11, 2013

Bài 3 – Tạo một cơ sở dữ liệu trong MySQL với phpMyAdmin

Trước khi có thể tương tác với MySQL, bạn cần phải tạo một cơ sở dữ liệu trước.

Cú pháp câu lệnh SQL để tạo cơ sở dữ liệu như sau:
CREATE DATABASE têncơsởdữliệu
B1: Khởi động WAMP, nhập đường dẫn http://localhost/phpmyadmin/ vào trình duyệt
B2: Chọn thẻ SQL, một bảng như sau sẽ hiện ra
B3: Nhập câu lệnh để tạo cơ sở dữ liệu helloworld
B4: Sau khi nhập xong, click Go, nhìn sang cột bên tay trai, chúng ta sẽ thấy cơ sở dữ liệu helloworld

Chủ Nhật, 3 tháng 11, 2013

Bài 2 – Các kiểu dữ liệu trong CSDL MySQL

Trước khi đi sâu vào tìm hiểu cách thiết kế một cơ sở dữ liệu trong MySQL, chúng ta cần biết một số kiểu dữ liệu hay dùng: numeric(kiểu số), date and time(kiểu ngày tháng) và string(kiểu chuỗi hoặc văn bản).

Kiểu dữ liệu số – Numeric

Kiểu dữ liệu số nguyênBytesPhạm vi giá trị
TINYINT1-127 đến 128 hoặc 0 đến 255
SMALLINT2-32768 đến 32767 hoặc 0 đến 65535
MEDIUMINT3-8388608 đến 838860 hoặc 0 đến 16777215
INT4-2147483648 đến 2147483647 hoặc 0 đến 4294967295
BIGINT8-9223372036854775808 đến 9223372036854775807 hoặc 0 đến 18446744073709551615

Kiểu dữ liệu số thựcBytes
FLOAT4
DECIMAL5 – 17
DOUBLE8
REAL4

Kiểu dữ liệu date time

Kiểu dữ liệuPhạm vi giá trịMô tả
DATE‘1000-01-01′ – ‘9999-12-31′Trả về ngày tháng năm theo định dạng yyyy-mm-dd(năm-tháng-ngày)
DATETIME‘1000-01-01 00:00:00′ – ‘9999-12-31 23:59:59′Trả về ngày tháng năm kèm với thời gian định dạng YYYY-MM-DD HH:MM:SS (năm-tháng-ngày giờ-phút-giây)
TIMESTAMPbắt đầu từ 1970-01-01 00:00:00Trả về một timestamp(thời điểm một hành động được tạo ra như insert, update,…) theo định dạng YYYY-MM-DD HH:MM:SS
TIME‘-838:59:59′ – ‘838:59:59′Trả về một thời điểm nhất định, định dạng HH:MM:SS
YEAR1901 – 2155Trả về một năm nhất định, được viết theo định dạng 2 chữ số(95) hoăc 4 chữ số(1995)

Kiểu dữ liệu chuỗi – String

Kiểu dữ liệuPhạm vi giá trịMô tả
CHAR1-255 ký tựChứa một chuỗi có độ dài tối đa là 255 ký tự
VARCHAR1-255Chứa một biến chuỗi có độ dài tối đa là 255 ký tự
TINYTEXT1-255Chứa một văn bản có độ dài tối đa là 255 ký tự
TEXT1-65,535Chứa một văn bản có độ dài tối đa là 65,535 ký tự
BLOB65,535 bytesChứa đối tượng nhị phân
MEDIUMTEXT16,777,215Chứa một đoạn văn bản có độ dài tối đa là 16,777,215 ký tự
MEDIUMBLOB16,777,215 bytesChứa đối tượng nhị phân
LONGTEXT4,294,967,295Chứa một đoạn văn bản có độ dài tối đa là 4,294,967,295 ký tự
LONGBLOB4,294,967,295 bytesChứa đối tượng nhị phân
ENUM(x,y,z,…)65535 giá trịCho phép bạn tạo ra một danh sách các giá trị tùy chọn phù hợp

Thứ Bảy, 2 tháng 11, 2013

Bài 1 – Làm quen với phpMyAdmin

phpMyAdmin là một công cụ nguồn mở miễn phí được viết bằng PHP được dùng để xử lý quản trị của MySQL thông qua một trình duyệt web.




 Khởi động WAMP, mở trình duyệt, nhập đường dẫn http://localhost/phpmyadmin/
Trong đó:
Cột bên trái là danh sách các CSDL đã tạo và mặc định trong MySQL.
Cột bên phải là các thông số về MySQL đang chạy.

Thẻ Databases là nơi quản lý các CSDL: tạo mới, xóa, sửa,…
Thẻ SQL là nơi nhập các câu lệnh SQL.

Với phpMyAdmin bạn có 2 cách để quản lý CSDL của mình, một là dùng các công cụ trực quan do phpMyAdmin cung cấp, hai là dùng các câu lệnh SQL. 
Thẻ Status cho bạn biết trạng thái hoạt động của MySQL server hiện tại.
Thẻ Users dùng để quản lý người sử dụng. Nếu như bạn chưa tạo hay sử dụng dưới danh nghĩa một user nào thì user mặc định của bạn sẽ là root. 
Thẻ Import dùng để chèn các tệp tin sql bên ngoài vào cơ sở dữ liệu.
Thẻ Setting dùng để tùy chỉnh cấu hình cho phpMyAdmin.
Trong series này tôi sẽ hướng dẫn các bạn sử dụng phpMyAdmin bằng các câu lệnh SQL.

Thứ Sáu, 1 tháng 11, 2013

sửa lỗi không start được Apache XAMPP

1. My Computer --> C:/Xampp/apache/conf/extra
- Tìm đến file httpd-ssl.conf. Mở file này bằng Notepad, sau đó nhấn tổ hợp phím Ctrl + H để thay thế 443 bằng số bất kỳ. Nhấn Replace All rồi lưu file đó lại.
2. 
1. Skype
Đây là trường hợp thường gặp nhất. Apache mặc định hoạt động trên port 80 , và Skype cũng vậy. Mà thằng Skype thì lại mặc định khởi động trước nên nghiễm nhiên nó chiếm cổng 80 trước luôn (đoán vậy). XAMPP tới sau nên  ko vào được.
Có 2 cách giải quyết, đó là đổi port của XAMPP hoặc đổi port của Skype. Nghe nói 80 là port “truyền thống” của web cho nên mình sẽ tôn trọng truyền thống, bẻ  Skype đi hướng khác.
skype-port
Bỏ chọn dòng “Use port 80 and 443 for additional incoming connections”
Khởi động Skype, vào menu Tools > Options hoặc tổ hợp phím Ctrl + , (dấu phẩy) để mở giao diện cài đặt của Skype.
Chọn tab Advanced > Connection, bỏ check dòng “Use port 80 and 443 for additional incoming connections”.
Bấm Save và khởi động lại Skype là xong. :-bd
2. Microsoft SQL Server
Đối với các bạn lập trình C++, C#, VB.NET, ASP.NET,… thì thường có cài thêm MS SQL Server để lưu trữ dữ liệu, và bản thân thằng này cũng là một trong những nguyên nhân bóp cổ không cho XAMPP khởi động.
Mở giao diện SQL Server Configuration Manager (vào START gõ chữ “sql” là thấy – Windows 7, 8. Còn Windows XP thì chịu khó kiếm trong START > Program Files), chọn mục SQL Server Services bên trái, danh sách các mục con hiện ra bên phải, chọn stop dòng “SQL Server Reporting Services”.
sql-server-reporting-services
Stop dịch vụ “SQL Server Reporting Services”
Để chắc ăn thì nên vào properties ngăn nó chạy lúc khởi động máy luôn. Việc này có ảnh hưởng gì tới SQL Server ko thì mình ko dám chắc, vì tốt nghiệp xong là hết muốn nhìn mấy món của các Bill rồi.
3. Internet Information Services (IIS)
IIS là chương trình tạo webserver của Microsoft, chức năng giống như XAMPP, nhưng hỗ trợ chủ yếu cho những đứa con của các Bill (ASP, ASP.NET,…), muốn chạy PHP cũng được nhưng phải cấu hình thêm chút… nói chung là mang tính chất ăn ké cho nên mình ko hảo lắm, tội gì ăn ké khi mà XAMPP ra đời để nuôi PHP trên Windows. \:D/
Do lúc đi học có môn lập trình web bằng ASP.NET cho nên mình có cài IIS để làm webserver. Và vì nó mang tính chất đồng loại với XAMPP nên nó cũng chiếm luôn cái port 80, làm XAMPP lại ngậm ngùi hít khói như ngày gặp gỡ Skype. :-<
stop-iis-services
Stop dịch vụ của IIS, nhường chỗ cho XAMPP
Mở giao diện cấu hình IIS lên (vào START gõ “iis” là thấy, nếu không thấy thì mò như trong Windows XP nói trên), stop dịch vụ của IIS đi, chặn nó khởi động cùng windows cũng được, chừng nào cần xài thì hãy mở lên.
4. VMWare Workstation
Nếu bạn đang sử dụng chương trình tạo máy ảo VMWare Workstation thì cũng có thể gặp vấn đề khởi động XAMPP, do VMWare đã sử dụng port 80 và 443 vào việc chia sẻ dữ liệu giữa máy thật và máy ảo, nên XAMPP nghiễm nhiên trở thành “trâu chậm uống nước đục”. Cách khắc phục: (tham khảo superuser.com)
Mở VMWare, vào menu Edit → Preferences → Shared VMs → click DISABLE SHARING
vmware-workstation-xampp-khong-khoi-dong-duoc
Tắt chức năng Sharing trong VMWare Workstation. (Ảnh: esense.be)
5. Còn gì nữa không?
xampp-sucess-start
Màu xanh tươi mát
Trên đây là 3(+1) trường hợp mình đã gặp khi sử dụng XAMPP. Có lần dùng WAMP cũng bị tương tự, giải quyết y chang, bởi vì nó đều xoay quanh port 80 thôi.

Cách Export và import Bằng câu lệnh cơ sở dữ liệu MySQL

Ta có thể dùng phpMyAdmin để export hay backup cơ sở dữ liệu của MySQL. Tuy nhiên với những database có kích thước lớn thì dùng phpMyAdmin không phù hợp. Thay vào đó, ta nên thực hiện trực tiếp trên server thông qua các chương trình mysql và mysqldump

1. Cách Export/Backup/Dump cơ sở dữ liệu MySQL

Để xuất cơ sơ dữ liệu của MySQL ra một file text .sql, ta chạy câu lệnh sau ở shell của server. Nếu không ngồi trực tiếp trên server, ta có thể telnet/ssh tới.

mysql -h localhost -u username -p database_name > dump.sql

Chú ý: không có khoảng cách giữa p và password
Toàn bộ dữ liệu, các bảng của CSDL database_name sẽ được xuất ra file dạng text dump.sql

1.1 Chỉ xuất cấu trúc (table structure) của CSDL 

Nếu bạn chỉ muốn xuất cấu trúc, không cần thiết dữ liệu, có thể thêm tham số -no-data vào câu lệnh trên 
mysqldump -u username -p –no-data database_name > dump.sql

1.2 Chỉ xuất data 

Ngược lại với trường hợp trên, nếu bạn chỉ muốn xuất data, không cần quan tâm thông tin database và cấu trúc các table, bạn có thể dùng tham số –no-create-info

mysqldump -u username -p –no-create-info database_name > dump.sql

1.3 Export cùng lúc nhiều cơ sở dữ liệu

Nếu muốn export cùng lúc nhiều CSDL vào chung một file dump 
mysqldump -u username -p–databases db_name1 [db_name2 ...] > dump.sql 
1.4 Export tất cả CSDL  
mysqldump -u username -p –all-databases > dump.sql 
2. Import và restore cơ sở dữ liệu mySQL  
Câu lệnh để import CDSL cũng khá đơn giản, ngược lại với lệnh dump  
mysql -u username -p database_name < dump.sql