Lập trình UD Desktop_12 - Tổng quan về CSDL

Bài trước: Lập trình UD Desktop_11 - Timer ProgressBar NumericUpDown Process DateTimePicker LinQ
-----

3         Lập trình cơ sở dữ liệu

3.1 Một số khái niệm

3.1.1       Cơ sở dữ liệu là gì?



Cơ sở dữ liệu (database) là một tập hợp thông tin có cấu trúc. Các thông tin này được duy trì dưới dạng một tập hợp các tập tin trong hệ điều hành, hoặc được lưu trữ trong các hệ quản trị cơ sở dữ liệu.

Ưu điểm của cơ sở dữ liệu:

– Giảm sự trùng lặp thông tin xuống mức thấp nhất

– Có thể truy xuất thông tin theo nhiều cách

– Cho phép nhiều người cùng sử dụng một lúc

Cơ sở dữ liệu phản ánh một phần của thế giới thật.

Có nhiều loại cơ sở dữ liệu, ví dụ:

Loại cơ sở dữ liệu
Đặc điểm
Cơ sở dữ liệu dạng file
Dữ liệu được lưu trữ dưới dạng các tập tin (text, ascii, .dbf).
Cơ sở dữ liệu quan hệ
Dữ liệu được lưu trữ trong các bảng dữ liệu gọi là các thực thể, giữa các thực thể này có mối liên hệ với nhau gọi là các quan hệ, mỗi quan hệ có các thuộc tính, trong đó có một thuộc tính là khóa chính. Các hệ quản trị hỗ trợ cơ sở dữ liệu quan hệ như: MS SQL server, Oracle, MySQL,…v.v.
Cơ sở dữ liệu hướng đối tượng
Dữ liệu cũng được lưu trữ trong các bảng dữ liệu, nhưng các bảng có bổ sung thêm các tính năng hướng đối tượng như lưu trữ thêm các hành vi, nhằm thể hiện hành vi của đối tượng. Mỗi bảng xem như một lớp dữ liệu, mỗi dòng dữ liệu trong bảng là một đối tượng. Các hệ quản trị có hỗ trợ cơ sở dữ liệu hướng đối tượng như: MS SQL server, Oracle, PostgreSQL (viết tắt Postgres).
Cơ sở dữ liệu bán cấu trúc
Dữ liệu được lưu dưới dạng XML, với định dạng này, thông tin mô tả về đối tượng thể hiện trong các thẻ (tag). Đây là cơ sở dữ liệu có nhiều ưu điểm, do lưu trữ được hầu hết các loại dữ liệu khác nhau. Đây là hướng mới trong nghiên cứu và ứng dụng

Bảng dưới đây là danh sách các cơ sở dữ liệu phổ biến đang được mọi người sử dụng,

Cơ sở dữ liệu
Tỉ lệ
Cơ sở dữ liệu
Tỉ lệ
MySQL
58.7%
Memcached
5.5%
SQL Server
41.2%
Amazon DynamoDB
5.2%
PostgreSQL
32.9%
Amazon RDS/Aurora
5.1%
MongoDB
25.9%
Cassandra
3.7%
SQLite
19.7%
IBM Db2
2.5%
Redis
18.0%
Neo4j
2.4%
Elasticsearch
14.1%
Amazon Redshift
2.2%
MariaDB
13.4%
Apache Hive
2.2%
Oracle
11.1%
Google BigQuery
2.1%
Microsoft Azure (Tables, CosmosDB, SQL, etc)
7.9%
Apache Hbase
1.7%
Google Cloud Storage
5.5%



3.1.2       Hệ quản trị cơ sở dữ liệu là gì?

Theo vi.wiki:

Hệ quản trị cơ sở dữ liệu (tiếng Anh: Database Management System – DBMS) là phần mềm hay hệ thống được thiết kế để quản trị một cơ sở dữ liệu.

Các DBMS cho phép lưu trữ, sửa chữa, xóa và tìm kiếm thông tin trong một cơ sở dữ liệu. Có nhiều loại DBMS khác nhau: từ phần mềm nhỏ chạy trên máy tính cá nhân đến những hệ quản trị phức tạp chạy trên một hoặc nhiều siêu máy tính.

Đa số các DBMS đều sử dụng ngôn ngữ truy vấn theo cấu trúc, tiếng Anh gọi là Structured Query Language (SQL).

Các DBMS phổ biến gồm: mySQL, Oracle, PostgreSQL, SQL server, DB2, Infomix.

Phần lớn các DBMS hoạt động tốt trên nhiều hệ điều hành khác nhau như Linux, Unix mà MacOS, trừ SQL server của Microsoft chỉ chạy trên hệ điều hành Windows.


3.1.3       Cài đặt SQL Server


Chọn phiên bản nào[1]?

SQL Server hiện có nhiều phiên bản khác nhau. Dưới đây là danh sách các phiên bản cùng với tính năng của từng phiên bản.

Enterprise
bản cao cấp nhất với đầy đủ tính năng
Standard
ít tính năng hơn Enterprise, sử dụng khi không cần dùng tới các tính năng nâng cao
Workgroup
phù hợp cho các công ty lớn với nhiều văn phòng làm việc từ xa
Web
thiết kế riêng cho các ứng dụng web
Developer
tương tự như Enterprise nhưng chỉ cấp quyền cho một người dùng duy nhất để phát triển, thử nghiệm, demo. Có thể dễ dàng nâng cấp lên bản Enterprise mà không cần cài lại
Express
bản này chỉ dùng ở mức độ đơn giản, tối đa 1 CPU và bộ nhớ 1GB, kích thước tối đa của cơ sở dữ liệu là 10GB (miễn phí, nhẹ, phù hợp để học)
Compact
nhúng miễn phí vào các môi trường phát triển ứng dụng web. Kích thước tối đa của cơ sở dữ liệu là 4GB
Datacenter
thay đổi lớn trên SQL Server 2008 R2 chính là bản Datacenter Edition. Không giới hạn bộ nhớ và hỗ trợ hơn 25 bản cài
Business Intelligence
Business Intelligence Edition mới được giới thiệu trên SQL Server 2012. Phiên bản này có các tính năng của bản Standard và hỗ trợ một số tính năng nâng cao về BI như Power View và PowerPivot nhưng không hỗ trợ những tính năng nâng cao về mức độ sẵn sàng như AlwaysOn Availability Groups…
Enterprise Evaluation
bản SQL Server Evaluation Edition là lựa chọn tuyệt vời để dùng được mọi tính năng và có được bản cài miễn phí của SQL Server để học tập và phát triển. Phiên bản này có thời gian hết hạn là 6 tháng từ ngày cài

Danh sách các bản SQL server theo thời gian[2]

SQL Server 2017
SQL Server 2016
SQL Server 2014
SQL Server 2012
SQL Server 2008 R2                           
SQL Server 2008
SQL Server 2005
SQL Server 2000
SQL Server 7.0

Tải nguồn

SQL server 2008 express (SQLEXPRADV_x64_ENU.exe, dung lượng ~1GB)

Lưu ý: nếu lấy SQLEXPR_x86_ENU.exe (89.1 MB) hoặc SQLEXPR_x64_ENU.exe (82.5 MB hoặc SQLEXPR32_x86_ENU.exe (61.1 MB) sẽ bị thiếu Microsoft SQL Server Management Studio.


Hướng dẫn cài đặt SQL server 2008 express: https://www.youtube.com/watch?v=mxWiiyb-rBE

Hướng dẫn cài đặt SQL server 2017 express: https://viblo.asia/p/tong-quan-va-cach-cai-dat-cua-ms-sql-server-3P0lPzJGKox

Lab 19. Lựa chọn phiên bản và cài đặt SQL Server

<///// hết buổi 14



[1] https://quantrimang.com/cac-phien-ban-ms-sql-server-145297
[2] https://sqlserverbuilds.blogspot.com/
-----
Tiếp theo: Lập trình UD Desktop_13 - Tạo CSDL và giao diện
Xem thêm: Danh sách các bài học