Nghiên cứu và xây dựng hệ thống xác thực người dùng tập trung - Pdf 14

MỤC LỤC

MỤC LỤC 1
LỜI MỞ ĐẦU 3
CHƯƠNG 1. MÔ TẢ TỔNG QUAN VỀ HỆ THỐNG XÁC THỰC TẬP TRUNG 5
1.1. Giới thiệu tổng quan về mô hình xác thực. 5
1.2. Mô hình xác thực của một số hệ thống tại Viễn thông Hà Nội. 6
1.2.1. Hệ thống điều hành sửa chữa và quản lý mạng cáp. 6
1.2.2. EOffice. 8
1.2.3. Phát triển thuê bao và điều hành thi công. 9
1.2.4. Quản lý Thanh toán Cước phí Viễn thông. 11
1.2.5. Hệ thống báo cáo sản xuất kinh doanh 13
1.3. Nhu cầu xây dựng hệ thống xác thực tập trung. 14
CHƯƠNG 2: CƠ SỞ DỮ LIỆU MYSQL, MÔ HÌNH HỆ THỐNG SỬ DỤNG
WEBSERVICE VÀ MỘT SỐ PHƯƠNG PHÁP XÁC THỰC 16
2.1. Cơ sở dữ liệu MySQL 16
2.1.1. Giới thiệu về hệ Quản trị cơ sở dữ liệu MySQL 16
2.1.2. Truy xuất hệ Quản trị cơ sở dữ liệu MySQL 18
2.1.3. Những cú pháp cơ bản của MySQL 22
2.2. Mô hình hệ thống sử dụng WebService 26
2.2.1. Giới thiệu về Web Services 26
2.2.2. Các thành phần của Web Services 27
2.2.3. Mô hình Web Services 31
2.3. Một số phương pháp xác thực 41
2.3.1. Sơ lược về xác thực người dùng 41
2.3.2. Xác thực qua tên người dùng/mật khấu 42
2.3.3. Xác thực sinh trắc học qua vân tay 43
2.3.4. Xác thực qua chứng chỉ Token 44
2.3.5. Xác thực sử dụng OTP qua SMS. 46
2.3.6. Xác thực sử dụng OTP ma trận 2 chiều. 47
2.3.7. Quản lý mật khẩu người dùng 48

CHƯƠNG 5. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 72
PHỤ LỤC 73
TÀI LIỆU THAM KHẢO 75 LỜI MỞ ĐẦU

Trong những năm gần đây, cùng với sự phát triển mạnh mẽ của ngành công
nghiệp công nghệ thông tin và viễn thông, Viễn thông Hà Nội cũng liên tục phát triển
và cung cấp đa dạng các dịch vụ tới mọi đối tượng khách hàng. Rất nhiều hệ thống,
chương trình phần mềm đã được Viễn thông Hà Nội liên tiếp đưa vào sử dụng với mục
đích quản lý điều hành quá trình cung cấp và vận hành dịch vụ trên. Hiện tại Viễn
thông Hà Nội đang quản lý, vận hành các hệ thống CNTT phục vụ điều hành sản xuất
kinh doanh như: PTTB, QLTT, Portal, tính cước Các hệ thống trên đều thực hiện
việc xác thực người dùng độc lập, dẫn đến người có quyền truy nhập nhiều hệ thống
phải ghi nhớ nhiều tên truy nhập/mật khẩu. Mặt khác các hệ thống trên vẫn đang sử
dụng mô hình xác thực qua tên truy nhập/mật khẩu có tính bảo mật không cao, dễ bị
người khác đánh cắp.
Việc nghiên cứu và tiếp thu công nghệ mới áp dụng trong sản xuất kinh doanh
nhằm nâng cao hiệu quả, tính bảo mật của các hệ thống CNTT là cần thiết đối với sự
phát triển công nghệ thông tin của Viễn thông Hà Nội.
Việc xây dựng một hệ thống xác thực tập trung cho tất cả các hệ thống CNTT
của Viễn thông Hà Nội sẽ đáp ứng được nhu cầu quản lý người dùng tập trung. Hệ
thống này sẽ cung cấp tính năng xác thực người dùng cho tất cả các hệ thống CNTT
khác qua các thư viện hàm giao tiếp chuẩn. Khi đó các hệ thống CNTT khác có thể sử
dụng kết quả xác thực do hệ thống xác thực tập trung cung cấp để quyết định người
dùng có quyền hay không hoặc có quyền đến mức nào khi truy nhập từng hệ thống.
Ngoài ra, việc nghiên cứu và áp dụng các công nghệ mới, đặc biệt là các công
nghệ bảo mật, an toàn dữ liệu đã được Giám đốc Viễn thông Hà Nội quan tâm chỉ đạo
nghiên cứu. Trong các công nghệ bảo mật sử dụng yếu tố sinh trắc học, kỹ thuật nhận

thống xác thực tập trung trong Viễn thông Hà Nội, quy trình thực hiện khai báo, chỉnh
sửa thông tin người dùng.
Chương 5. Kết luận.
Nhóm thực hiện đề tài trân trọng cảm ơn Giám đốc Viễn thông Hà Nội đã tin
tưởng giao cho nhóm thực hiện và triển khai đề tài này. Trong quá trình thực hiện,
nhóm đề tài cũng được lãnh đạo Viễn thông Hà Nội, các phòng ban chức năng và các
đơn vị liên quan tạo điều kiện giúp đỡ. Chúng tôi xin chân thành cảm ơn.
CHƯƠNG 1. MÔ TẢ TỔNG QUAN VỀ HỆ THỐNG XÁC THỰC
TẬP TRUNG
1.1. Giới thiệu tổng quan về mô hình xác thực.
a. Khái niệm về xác thực.
Xác thực (Authentication) là một hành động nhằm thiết lập hoặc chứng thực một
cái gì đó (hoặc một người nào đó) đáng tin cậy, có nghĩa là những lời khai báo do
người đó đưa ra hoặc về vật đó là sự thật. Xác thực một đối tượng còn có nghĩa là
công nhận nguồn gốc của đối tượng, trong khi, xác thực một người thường bao gồm
việc thẩm tra nhận dạng họ. Việc xác thực thường phụ thuộc một hoặc nhiều yếu tố
xác thực cụ thể.
Xác thực là đặc biệt quan trọng để cho sự hoạt động của hệ thống được an toàn.
Hệ thống luôn thực hiện xác thực trước tiên thực thể hoặc đối tượng khi nó hoặc người
đó cố thử thiết lập liên lạc. Khi đó nét nhận dạng của thực thể được dùng để xác định
sự truy nhập của nó như một đặc quyền hoặc để có được sự phục vụ của hệ thống.
Suốt quá trình thực hiện xác thực, hai bên muôn luôn trao đổi các bí mật chung mà nó
sẽ được dùng để đưa đến sự bảo mật và toàn vẹn dữ liệu xác thực.
b. Xác thực người dùng.
Hệ thống xác thực người dùng đóng vai trò hết sức to lớn trong việc bảo mật
thông tin của người dùng trong thời kỳ tin học hóa hiện nay. Đối với một người sử
dụng máy tính, việc nhập thông tin tên người dùng, mật khẩu là một thao tác quen
thuộc hàng ngày để có thể truy nhập vào các hệ thống nghiệp vụ, các tệp tin, thư điện
tử, tài khoản ở ngân hàng, những thông tin cá nhân,… mà người dùng đó không muốn
người khác biết được.

cáp/dây thuê bao treo trên cột).
Điều hành sửa chữa toàn bộ dịch vụ & điều hành xử lý sự cố trong VTHN, bao
gồm các chức năng như lập phiếu báo hỏng, đo thử, phân ca,
b. Mô hình hệ thống.

Mô hình xác thực
hệ thống điều hành sửa chữa và quản lý mạng cáp
c. Thông tin hệ thống.
- CSDL : Oracle 11g
- Cách thức phân quyền : theo quyền người dùng theo nhóm người
dùng, một người có thể thuộc nhiều nhóm (hệ thống quản lý mạng cáp
GTCAS).
- Quản trị người dùng : Web.
- Phương thức xác thực :
- Web Form tại các đơn vị: Xác thực thông qua Username, Password mã hóa
với CSDL tại máy chủ 10.10.31.135.
- Các hệ thống cùng sử dụng : Điều hành sửa chữa; Quản lý mạng cáp.
- Mã hóa mật khẩu : có.
- Mã hóa thông tin người dùng : không.
- Mã hóa CSDL : không.
d. Thông tin về danh mục người dùng.

- password : mật khẩu – đã mã hóa,
- ghi_chu : ghi chú,
- id_nhanvien : nhân viên,
- theme : kiểu giao diện người dùng,
- dang_hoatdong : trạng thái khóa/mở.
 QLMC:
- USERNAME : account đăng nhập
- PASSWORD : mật khẩu
- HOTEN : họ tên nhân viên
- NGAYSINH : ngày sinh
- MATHEKS : mã thẻ nhân viên
- DONVI : tên đơn vị
- GHICHU : ghi chú
- THONGTIN : thông tin bổ sung về quyền hạn người dùng
- ID : ID
1.2.2. EOffice.
a. Chức năng của hệ thống.
Là hệ thống thông tin nội bộ của công ty trợ giúp cho việc quản lý công việc và
trao đổi thông tin điều hành giữa các bộ phận. Eoffice bao gồm một số chức năng như
gửi nhận thư điện tử, gửi nhận văn bản, quản lý công việc, trao đổi trực tuyến,…
b. Mô hình hệ thống.

IMAP
CSDL
SQL Server
Bao gồm hai chương trình là:
- Chương trình Phát triển Thuê bao: Là chương trình nhập thông tin đầu vào đầu
tiên cho toàn bộ chu trình chăm sóc về dịch vụ viễn thông cho khách hàng. Chương
trình Phát triển thuê bao trợ giúp nhân viên giao dịch lập hợp đồng tiếp nhận các yêu
cầu về dịch vụ viễn thông của khách hàng, bao gồm các chức năng chính như lập hợp
đồng (đặt mới, dịch chuyển,…), thực hiện giao phiếu trực tiếp tới đơn vị thi công, tra
cứu thông tin khách hàng và hoàn công,…
- Chương trình Điều hành Phát triển Thuê bao: là chương trình hỗ trợ quản lý thi
công lắp đặt dịch vụ cho khách hàng. Bao gồm các chức năng chính như giao phiếu
nhân công, giao phiếu tự động, tra cứu lịch sử lắp đặt,…
b. Mô hình hệ thống.

Mô hình xác thực hệ thống Phát triển thuê bao
c. Thông tin hệ thống.
- CSDL : Oracle 10g.
- Cách thức phân quyền : theo quyền người dùng và quyền cho nhóm
người dùng
- Quản trị người dùng : Windows Client Form.

- Mã hóa mật khẩu : có (có thể giải mã).
- Mã hóa thông tin người dùng : không.
- Mã hóa CSDL : không.
d. Thông tin về danh mục người dùng.
* Số lượng: 1726 người dùng:
- Giao dịch viên: 936
- Đài, host, OMC: 387
- Lãnh đạo VTHN, công ty điện thoại: 8
- Các người dùng lấy báo cáo, tra cứu,…
* Nhóm người dùng:
- Lãnh đạo các công ty điện thoại.
- Trưởng các đài, phòng nghiệp vụ.
- Giao dịch viên tiếp nhận yêu cầu.
- Nhân viên điều hành thi công: OMC, Host, đài.
- Cán bộ phòng ban chức năng.
* Thông tin bảng dữ liệu người dùng:
- MA_ND : mã người dùng
- MATKHAU : mật khẩu mã hóa.
- TEN_ND : tên người dùng
- QUANTRI : quản trị
- NHANVIEN_ID : nhân viên
- NHOM_ND_ID : nhóm người dùng
- TRANGTHAI : trạng thái (active/inactive)
- GHICHU : ghi chú.
1.2.4. Quản lý Thanh toán Cước phí Viễn thông.
a. Chức năng của hệ thống.
Là chương trình quản lý nợ của khách hàng, bao gồm các chức năng: gạch nợ
(theo nhiều phương thức khách hàng thực hiện trả), điều chỉnh, quản lý đường thu, đôn
đốc thanh toán, cắt/phục nợ, tổng hợp nợ cuối tháng,… Hiện tại chương trình đang
được xây dựng mới với mô hình hệ thống như phần dưới đây.

(Web Service; C#)
Windows form
Trung tâm
Windows Form
Điểm giao dịch
HTTP
* Số lượng: 79 người dùng (tính tới thời điểm hiện tại).
* Nhóm người dùng:
- Cán bộ phòng kỹ thuật nghiệp vụ,
- Tổ trưởng các điểm thu.
- Giao dịch viên.
* Thông tin bảng dữ liệu người dùng:
- Username : mã người dùng
- Password : mật khẩu
- FullName : Tên đầy đủ
- Email : Email
- HomePage : Địa chỉ web site
- Gender : Giới tính
- Status : Trạng thái
- Group_ID : Nhóm
- NHANVIEN_ID : Nhân viên.
1.2.5. Hệ thống báo cáo sản xuất kinh doanh
a. Chức năng của hệ thống.
Là hệ thống cung cấp thông tin về hiện trạng hoạt động sản xuất kinh doanh của
Viễn thông Hà Nội.
b. Mô hình hệ thống.


o HoTen: Họ tên
o DonVi: Đơn vị
o TheKS: Thẻ kiểm soát
o GhiChu: ghi chú.
1.3. Nhu cầu xây dựng hệ thống xác thực tập trung.
Việc xây dựng một hệ thống xác thực tập trung cho tất cả các hệ thống CNTT
của Viễn thông Hà Nội sẽ đáp ứng được nhu cầu quản lý người dùng tập trung. Hệ
thống này sẽ cung cấp tính năng xác thực người dùng cho tất cả các hệ thống CNTT
khác qua các thư viện hàm giao tiếp chuẩn. Khi đó các hệ thống CNTT khác có thể sử
dụng kết quả xác thực do hệ thống xác thực tập trung cung cấp để quyết định người
dùng có quyền hay không hoặc có quyền đến mức nào khi truy nhập từng hệ thống.
Tuy nhiên để xây dựng một hệ thống xác thực tập trung, cần nghiên cứu và đưa
ra một giải pháp tổng thể. Trước tiên cần tiến hành rà soát và đưa ra một quy tắc đặt
tên người dùng phù hợp thông qua việc rà soát, đánh giá và tổng hợp dữ liệu về thông
tin người dùng trong các hệ thống đã có. Từ đó đưa ra một phương án tối ưu nhất cho
việc xây dựng hệ thống dữ liệu người dùng tập trung.
Vấn đề thêm mới người dùng phải được thực hiện trực tiếp trên hệ thống xác
thực tập trung nhằm đảm bảo cho việc quản lý. Các chương trình tác nghiệp sẽ không
trực tiếp tham gia vào khâu thêm mới người dùng mà chỉ sử dụng dữ liệu người dùng.
Sau khi xây dựng thành công hệ thống xác thực tập trung với dữ liệu người dùng
phù hợp cùng với thư viện hàm giao tiếp chuẩn, cần có sự phối hợp chỉnh sửa các
chương trình tác nghiệp liên quan để chuyển đổi các chương trình này sang sử dụng kỹ
thuật xác thực trên hệ thống xác thực tập trung thông qua các hàm giao tiếp đã xây
dựng.
Quá trình chuyển đổi trên cũng cần được tính toán các bước hợp lý, chẳng hạn
quyền truy xuất chương trình vẫn phải được lưu trữ trực tiếp, hệ thống xác thực tập
trung chỉ đưa ra kết quả xác thực trong khi quyền truy nhập chương trình vẫn do
chương trình đó định nghĩa riêng.
CHƯƠNG 2: CƠ SỞ DỮ LIỆU MYSQL, MÔ HÌNH HỆ THỐNG SỬ
DỤNG WEBSERVICE VÀ MỘT SỐ PHƯƠNG PHÁP XÁC THỰC

Sự đáng tin cậy cao là tiêu chuẩn của MySQL. MySQL đưa ra nhiều tùy chọn từ
cấu hình C/S tốc độ cao, cho phép các nhà phân phối bên thứ 3 đưa ra những giải pháp
tích hợp trên Server cơ sở dữ liệu MySQL.
d. Hỗ trợ giao dịch mạnh
MySQL cung cấp một trong số những Engine thao tác cơ sở dữ liệu mạnh nhất
trên thị trường, bao gồm hỗ trợ giao dịch ACID, không hạn chế số bản ghi, khả năng
phân loại và hỗ trợ giao dịch đa dạng Multi-version. Tính toàn vẹn của dữ liệu cũng
được bảo đảm trong suốt quá trình Server hoạt động.
e. Lưu trữ Data đáng tin cậy
MySQL đạt chuẩn cho các Website phải trao đổi dữ liệu thường xuyên vì nó có
Engine xử lý tốc độ cao, khả năng chèn dữ liệu nhanh và hỗ trợ mạnh đối với các chức
năng tìm kiếm. Những tính năng này cũng được áp dụng cho môi trường lưu trữ dữ
liệu đến mức hàng terabytes của MySQL.
f. Chế độ bảo mật dữ liệu mạnh
Vì bảo mật dữ liệu là công việc số một của các chuyên gia về cơ sở dữ liệu,
MySQL đưa ra tính năng bảo mật đặc biệt chắc chắn. Trong quá trình xác thực quyền
truy cập cơ sở dữ liệu, MySQL cung cấp các kĩ thuật mạnh mà chắc chắn chỉ có người
sử dụng đã được phân quyền mới có thể truy nhập được vào Server lưu trữ cơ sở dữ
liệu. SSH và SSL cũng được hỗ trợ để các kết nối được an toàn và bảo mật. Một đối
tượng Framework được đưa ra để chỉ có người sử dụng có quyền mới thao tác được dữ
liệu. Tiện ích Backup và Recovery cung cấp bởi MySQL và các hãng phần mềm thứ 3
cho phép Backup mức Logic và vật lý cũng như Recovery toàn bộ dữ liệu hoặc dữ liệu
tại một thời điểm nào đó.
g. Phát triển đa dạng các phương thức
Một trong số các lý do khiến cho MySQL là cơ sở dữ liệu mã nguồn mở phổ biến
nhất thế giới là nó cung cấp đa dạng các phương thức thao tác dữ. Cơ sở dữ liệu
MySQL hỗ trợ Stored procedure, Trigger, Function, View, Cursor, ANSI-standard
SQL và nhiều phương thức nữa. Thư viện Plug-in sẵn sàng để nhúng cơ sở dữ liệu
MySQL và hỗ trợ trong bất kì ứng dụng nào. MySQL cũng cung cấp các bộ kết nối
như ODBC, JDBC cho tất cả các Form của ứng dụng sử dụng MySQL.

khác lại đưa một yêu cầu “Hãy tìm một dữ liệu chỉ định và đưa nó ra”. Các chương
trình ứng dụng có tác động lên cơ sở dữ liệu đang chạy khi người sử dụng tác động lên
trang Web. Ví dụ, khi người sử dụng ấn vào nút Submit sau khi đã điền vào các Form,
chương trình liền “chế biến” thông tin trong Form đó và lưu nó trong cơ sở dữ liệu.
MySQL là một RDBMS tốc độ nhanh và dễ sử dụng dùng cho các cơ sở dữ liệu
trên các Website. Tốc độ là điểm tập trung chính của các nhà lập trình từ khi bắt đầu.
Mặc dù MySQL có ít tính năng hơn các đối thủ thương mại của nó thì nó có toàn bộ
các tính năng cần thiết cho bộ phận quan trọng các lập trình viên cơ sở dữ liệu. Dễ
dàng hơn khi cài đặt và sử dụng so với các đối thủ cạnh tranh thương mại của mình và
sự khác biệt về giá là thế mạnh của MySQL. MySQL được phát triển, phân phối và
được hỗ trợ bởi MySQL AB, một công ty Thuỵ điển. MySQL được phổ biến theo 2
cách:
- Phần mềm nguồn mở: MySQL phổ biến qua GNU GPL và không mất phí.
Bất cứ ai đáp ứng được các yêu cầu của GPL đều có thể sử dụng phần mềm một
cách miễn phí. MySQL được sử dụng miễn phí như một cơ sở dữ liệu trên Website.
- Bản quyền thương mại: MySQL phổ biến với giấy phép đăng ký thương mại
đối với những ai coi trọng nó hơn GPL. Nếu lập trình viên muốn sử dụng MySQL
như một phần của sản phẩm phần mềm và muốn bán sản phẩm hơn là công bố nó
dưới GPL, lập trình viên cần phải mua bản quyền thương mại. Giá mua bản quyền
rất hợp lý.
Tìm kiếm hỗ trợ kỹ thuật đối với MySQL không phải là vấn đề. Người thiết kế
có thể tham gia vào một trong các cuộc thảo luận qua e-mail được cung cấp trên
Website MySQL và có thể tìm kiếm các các câu hỏi và trả lời về MySQL.
a. Các ưu thế của MySQL
MySQL là cơ sở dữ liệu phù hợp với các lập trình viên Web. Tốc độ và kích cỡ
nhỏ làm cho nó trở nên lý tưởng đối với Website. Thực tế nó chính là một chương
trình mã nguồn mở và đây chính là cơ sở giải thích cho tính phổ biến của nó. Các ưu
điểm của MySQL:
 Tốc độ nhanh: Mục tiêu chính của các đối tượng đã phát triển MySQL là
tốc độ nên phần mềm được thiết kế ngay từ đầu với tốc độ trong ý tưởng.

cho MySQL Server với nội dung “hãy tạo một cơ sở dữ liệu và gọi nó là newdata”.
Sau đó MySQL Server tạo một từ điển phụ trong từ điển dữ liệu của nó với tên là
newdata. Cùng một phương thức đó, để bổ xung dữ liệu cho cơ sở dữ liệu phải gửi một
“thông điệp chào” MySQL Server, cung cấp cho nó dữ liệu và yêu cầu bổ xung dữ liệu
vào nơi cần thiết.
Trước khi đi qua các hướng dẫn cho các MySQL Server cần phải chạy và chờ
các yêu cầu. MySQL Server thường được thiết lập vì vậy mà nó sẽ được bắt đầu khi
máy tính khởi động và chạy liên tục. Đây là bước Setup bình thường đối với Website.
Tuy nhiên, không cần thiết phải buộc nó hoạt động ngay khi máy tính được khởi động.
Ta có thể bắt đầu từ bất cứ lúc nào muốn truy cập vào cơ sở dữ liệu. Khi chạy,
MySQL Server vẫn tiếp tục nghe các thông điệp hướng trực tiếp vào nó.
c. Các kiểu dữ liệu MySQL
MySQL lưu trữ thông tin trong các dạng thức khác nhau dựa trên kiểu thông tin.
MySQL cho phép các kiểu dữ liệu khác nhau được sử dụng trong các cách khác nhau.
Các kiểu dữ liệu chính là dữ liệu ký tự, dữ liệu phông chữ và dữ liệu thời điểm/thời
gian.
Dữ liệu ký tự
Kiểu dữ liệu chung nhất là dữ liệu ký tự, dữ liêu này được lưu trữ như một chuỗi
các ký tự và có thể được vận dụng trong các chuỗi ký tự. Đa số thông tin lưu trữ sẽ có
dữ liệu ký tự như là tên khách hàng, địa chỉ, số điện thoại Dữ liệu ký tự có thể dịch
chuyển và in ra. Hai chuỗi ký tự có thể được ghép nối, chuỗi phụ có thể được chọn từ
chuỗi dài hơn và một chuỗi có thể thay thế cho chuỗi khác. Dữ liệu ký tự có thể được
lưu trữ trong dạng thức độ dài cố định hoặc độ dài khác nhau:
 Dạng thức độ dài cố định: Trong dạng thức này, MySQL dự trữ một khoảng
trống cố định dành cho dữ liệu. Nếu dữ liệu dài hơn độ dài cố định, chỉ có
các ký tự phù hợp mới được lưu, các ký tự còn lại không được lưu. Nếu
chuỗi ký tự lại ngắn hơn độ dài cố định, các khoảng trống bị bỏ phí.
 Dạng thức có độ dài khác nhau: Trong dạng thức này, MySQL lưu trữ chuỗi
ký tự trong lĩnh vực có cùng độ dài như chuỗi ký tự. Người thiết kế vẫn định
rõ độ dài của chuỗi ký tự, nhưng nếu chuỗi này ngắn hơn độ dài đã định

Kiểu dữ liệu MySQL
Mô tả
CHAR(length)
Chuỗi ký tự độ dài cố định
VARCHAR(length)
Chuỗi ký tự độ dài biến đổi. Chuỗi ký tự dài nhất có
thể được lưu là length, nó có thể giữa 1 và 255.
TEXT
Chuỗi ký tự có độ dài biến đổi với độ dài tối đa là
64KB các dòng text.
INT(length)
Số nguyên từ -2147483648 đến +2147483647. Con số
có thể được hiển thị là giới hạn về độ dài. Ví dụ, nếu
độ dài là 4, chỉ có các số từ -999 đến 999 có thể được
thể hiện, mặc dù các con số cao hơn được lưu giữ.
INT(length) UNSIGNED
Số nguyên từ 0 đến 4294967295. Độ dài là kích thước
của chữ số có thể được hiện thị. Ví dụ, nếu độ dài là
4, chỉ có các con số đến 9999 có thể được hiển thị,
mặc dù các con số cao hơn có thể được lưu.
DECIMAL(length.doc)
Số thập phân nơi length là số lượng các ký tự có thể
được sử dụng để hiển thị số gồm các điểm, các dấu
hiệu, các số mũ và dec là số tối đa các vị trí thập phân
được cho phép. Ví dụ, 12.34 có độ dài là 5 và thập
phân là 2.
DATE
Giá trị thời hạn với năm, tháng và ngày. Hãy trình
bày giá trị như YYYY-MM-DD (ví dụ, 2001-04-03).
TIME

- Truy xuất dữ liệu với điều kiện:
SELECT tên_cột FROM Tên_bảng WHERE điều kiện;
Ví dụ: select user_id,username from user where user_id=2;
- Truy cập dữ liệu và sắp xếp theo trình tự
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).

Ví dụ: select user_id,username from user order by username ASC ;

- Truy cập dữ liệu có giới hạn :
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ụ: select user_id,username from user order by username ASC limit 0,10 ;

- Cập nhật dữ liệu trong bảng:
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ụ: update user set email=”[email protected]” where user_id=1 ;

- Xóa dữ liệu trong bảng:

MySQL.
d. Khả năng nhân bản (Replication)
Cả hai đều có khả năng Replicate hoặc cung cấp phương tiện để làm việc này.
Tuy nhiên, MySQL nhanh hơn và ít sự cố hơn MSSQL vì tất cả các SQL Statements
dùng để thay đổi, cập nhật dữ liệu được lưu giữ trong Binary_log. MSSQL cung cấp
nhiều phương pháp Replicate cao cấp hơn, chi tiết hơn bởi thế nó phức tạp hơn và
chậm hơn.
e. Khả năng phục hồi (Recovery)
Nếu MySQL chạy thuần túy với MyISAM Storage Engine thì khả năng phục hồi
(sau khi bị Crash) không cách gì so sánh được với MSSQL. Tuy nhiên nếu MySQL
chạy với Innodb Engine thì khả năng phục hồi không thua kém gì MSSQL. Ngoài ra,
khả năng phục hồi còn được xét ở mức độ liên quan đến khả năng nhân bản
(Replication) ở trên. Bởi vì MSSQL cung cấp nhiều phương thức nhân bản nên việc
phục hồi dữ liệu trên MSSQL dễ dàng hơn.
f. Chi phí


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status