SQL - TẠO VÀ QUẢN LÍ CSDL
I. Lý thuyết.
1. Các cơ sở dữ liệu được SQL hỗ trợ.
- SQL Server hỗ trợ ba loại cơ sở dữ liệu:
+ Cơ sở dữ liệu hệ thống: Được tạo bởi SQL Server. Các cơ sở dữ liệu này được sử dụng để lưu thông tin về SQL Server. Ngoài ra, các cơ sở dữ liệu này còn được sử dụng để quản lí người dùng.
+ Cơ sở dữ liệu người dùng định nghĩa: Người sử dụng SQL Server có thể tạo các cơ sở dữ liệu người dùng định nghĩa. Mục đích các cơ sở dữ liệu này là để lưu dữ liệu của người sử dụng.
- Để tạo một cơ sở dữ liệu người dùng, các thông tin sau được yêu cầu:
+ Tên của sơ sở dữ liệu.
+ Người sở hữu hoặc người tạo cơ sở dữ liệu.
+ Kích thước của cơ sở dữ liệu.
+ Các tập tin và nhóm các tập tin được sử dụng để lưu trữ cơ sở dữ liệu.
Cú Pháp:
CREATE DATABASE database_name[ ON [ PRIMARY ] [ <filespec> [ ,....n ] [ , <filegroup> [ ,...n ] } ] ] [ COLLATE collation_name ] ] [;]
- Cách chỉnh sửa một cơ sở dữ liệu:
Cú Pháp:
Cú Pháp:
ALTER DATABASE database_name { <add_or_modify_files> | <add_or_modify_filegroups> | <set_database_options> | MODIFY NAME = new_database_name | COLLATE collation_name } [;]- Thay đổi người sở hữu database:
Cú Pháp:
EXECUTE sp_changedbowner [@loginame=]'login';
+ Cơ sở dữ liệu mẫu: SQL Server cung cấp các cơ sở dữ liệu mẫu để người sử dụng làm việc với SQL Server. Một cơ sở dữ liệu mẫu được giới thiệu trong SQL Server là AdventureWorks.
- Các cơ sở dữ liệu hệ thống gồm có:
+ master: Lữu trữ các tất cả các thông tin ở mức hệ thống của một nhân bản SQL Server.
+ msdb: Được sử dụng bởi SQL Server Agent để nhắc nhở các công tác thực hiện theo lịch biểu và các công việc khác.
+ model: Được sử dụng như cơ sở sữ liệu mẫu cho tất cả các cơ sở dữ liệu được tạo ra trong một nhân bản cụ thể của SQL Server.
+ resource: Là cơ sở dữ liệu chỉ đọc. Nó gồm các đối tượng hệ thống được gộp vào trong SQL Server.
+ tempdb: Lữu dữ các đối được tạm và các tập kết quả trung gian.
- Người dùng không được phép cập nhập thông tin trực tiếp vào các đối tượng cơ sở dữ liệu hệ thống.
- Người sử dụng có thể sử dụng các công cụ quản trị để quản trị hệ thống và quản lý tất cả các đối tượng cơ sở dữ liệu. Gồm có:
+ SQL Server Management Studio.
+ SQL Server Management Objects (SMO): Giao diện lập trình ứng dụng với các đối tượng quản lý SQL Server.
+ Transact-SQL scrip and stored procedures: sử dụng các thủ tục lưu trữ hệ thống và các phát biểu ngôn ngữ truy vẫn dữ liệu Transact-SQL.
2. Tập tin và nhóm tập tin.
- Các tập tin:
+ Là một đơn vị lưu trữ vật lý.
+ Có chứa các đối tượng CSDL.
+ Có một file logic và file vật lý.
- Nhóm tập tin:
+ Bao gồm nhiều tập tin được nhóm lại để thực hiện và quản lý một cách tốt hơn.
+ Một nhóm tập tin logic có thể chứa nhiều tập tin vật lý.
+ Trong mỗi nhóm tập tin gồm có nhiều tập tin liên quan với nhau và được lưu trong đối tượng của CSDL.
+ Nhóm tập tin có thể được tạo khi cơ sở dữ liệu hoặc thêm vào cơ sở dữ liệu đã có.
+ Một tập tin không thể là thành viên của nhiều hơn 1 nhóm tập tin lại cùng thời điểm.
+ Các tập tin không thể di chuyển đến các nhóm tập tin khác nhau khi các tập tin được thêm vào trong CSDL.
+ Nhóm tập tin có thể chỉ chứa các file dữ liệu và không có các file giao dịch.
- FILE_ID: Hàm trả về số ID của tập tin theo tên tập tin luận lý trong cơ sở dữ liệu hiện tại.
- FILE_NAME: Hàm trả về tên luận lý của tập tin theo số ID của tập tin cho trước.
- Ghi viết giao dịch: Nó ghi lại tất cả các quá trình hoạt động của CSDL. Các mẫu tin ghi viết được sử dụng để phục hồi trở lại các thay đổi.
- Xóa bỏ một CSDL:
Cú Pháp:
DROP DATABASE { database_name }
- Tạo một bản chụp CSDL:
Cú Pháp:
CREATE DATABASE database_snapshot_name ON { NAME = logical_file_name, FILENAME = 'ó_file_name' } [ ,...n ] AS SNAPSHOT OF source_database_name [;]
II. Code cơ bản của bài học.