intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Các hệ cơ sở dữ liệu: Giới thiệu và kiến trúc của hệ quản trị cơ sở dữ liệu - Lương Trần Hy Hiến

Chia sẻ: Gió Biển | Ngày: | Loại File: PDF | Số trang:22

96
lượt xem
3
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng "Các hệ cơ sở dữ liệu: Giới thiệu và kiến trúc của hệ quản trị cơ sở dữ liệu" cung cấp cho người đọc các kiến thức: Khái niệm cơ sở dữ liệu, hệ quản trị cơ sở dữ liệu, thành phần chức năng của hệ quản trị cơ sở dữ liệu,... Mời các bạn cùng tham khảo nội dung chi tiết.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Các hệ cơ sở dữ liệu: Giới thiệu và kiến trúc của hệ quản trị cơ sở dữ liệu - Lương Trần Hy Hiến

  1. Giới thiệu HQTCSDL & mô hình dữ liệu  Nhắc lại các kiến thức về cơ sở dữ liệu (CSDL).  ðịnh nghĩa hệ quản trị CSDL  Người dùng của hệ quản trị cơ sở dữ liệu.  Mô tả sự cần thiết của cơ sở dữ liệu.  Các thành phần trong CSDL.  Xác ñịnh sự cần thiết của việc lên kế hoạch phát triển CSDL.  Xác ñịnh các giai ñoạn phát triển cơ sở dữ liệu.  Xác ñịnh hậu quả của việc phân tích thiết kế CSDL nếu thực hiện không tốt.  Mô hình dữ liệu.  Sơ ñồ ERD. DBMS01 – Slides 2 Khái niệm cơ sở dữ liệu Khái niệm cơ sở dữ liệu  Cơ sở dữ liệu - CSDL (Database)  Là một hệ thống các thông tin có cấu trúc ñược lưu trữ trên các thiết bị lưu trữ thông tin thứ cấp (như băng từ, ñĩa từ ...)  Có thể thỏa mãn yêu cầu khai thác thông tin ñồng thời của nhiều người sử dụng hay nhiều chương trình ứng dụng với nhiều mục ñích khác nhau. DBMS01 – Slides 3 DBMS01 – Slides 4
  2. Khái niệm cơ sở dữ liệu Khái niệm cơ sở dữ liệu Vấn ñề cần giải quyết Ưu ñiểm nổi bậc của CSDL 1. Tính chủ quyền của dữ liệu  Dữ liệu chia sẽ  người có chức năng thay ñổi thường xuyên  Giảm sự trùng lặp thông tin xuống mức thấp  ðể có dữ liệu mới nhất phải cập nhật thường xuyên nhất và do ñó bảo ñảm ñược tính nhất quán 2. Tính bảo mật và quyền khai thác thông tin của người dùng và toàn vẹn dữ liệu  Dữ liệu ñược bảo vệ  Người dùng chỉ truy xuất thông tin mình có quyền  ðảm bảo dữ liệu có thể ñược truy xuất theo 3. Tranh chấp dữ liệu nhiều cách khác nhau  Dữ liệu ñược thêm vào ñồng thời  Khả năng chia sẻ thông tin cho nhiều người  Dữ liệu ñược sửa ñồng thời sử dụng và nhiều ứng dụng khác nhau 4. ðảm bảo dữ liệu khi có sự cố  ðang thực hiện thao tác thì mất ñiện  … DBMS01 – Slides 5 DBMS01 – Slides 6 Khái niệm cơ sở dữ liệu Giới thiệu về HQTCSDL Liên hệ với việc  Hệ quản trị cơ sở dữ liệu (Database Xây dựng một ứng dụng quản lý Management System - DBMS) ñược thiết kế ñể quản lý khối lượng dữ liệu rất lớn. Mục ñích chính của hệ quản trị CSDL là:  Cung cấp môi trường và công cụ ñể lưu trữ và truy xuất dữ liệu từ cơ sở dữ liệu một cách hiệu quả.  Lưu giữ thông tin về người dùng của hệ quản trị cơ sở dữ liệu và những tác vụ mà người dùng này có thể tương tác với dữ liệu ñược lưu trữ.  Một số hệ quản trị CSDL thường gặp  MS Access, MS SQL Server 200X, MySQL, DBMS01 – Slides 7 Oracle, LDAP, DB2, –…Slides 8 DBMS01
  3. Hệ quản trị CSDL Hệ quản trị CSDL Các thành phần của hệ quản trị CSDL Các thành phần của hệ quản trị CSDL 1. Ngôn ngữ giao tiếp giữa người sử dụng (NSD) và CSDL 4. Cơ chế giải quyết vấn ñề tranh chấp dữ liệu a. Ngôn ngữ mô tả dữ liệu (Data Definition Language - DDL)  Cấp quyền ưu tiên cho từng người sử dụng (người quản trị b. Ngôn ngữ thao tác dữ liệu (Data Manipulation Language - CSDL thực hiện) DML)  ðánh dấu yêu cầu truy xuất dữ liệu, phân chia thời gian, người c. Ngôn ngữ truy vấn dữ liệu, hay ngôn ngữ hỏi ñáp có cấu nào có yêu cầu trước thì có quyền truy xuất dữ liệu trước trúc (Structured Query Language - SQL) d. Ngôn ngữ ñiều khiển dữ liệu (Data Control Language - 5. Cơ chế sao lưu (Backup) và phục hồi (Restore) dữ liệu DCL) khi có sự cố xảy ra. 2. Từ ñiển dữ liệu (Data Dictionary)  ðịnh kỳ kiểm tra CSDL, sau một thời gian nhất ñịnh hệ quản trị  Dùng ñể mô tả các ánh xạ liên kết CSDL sẽ tự ñộng tạo ra một bản sao CSDL. Cách này hơi tốn kém, nhất là ñối với các CSDL lớn  Ghi nhận các thành phần cấu trúc của CSDL, các chương trình ứng dụng, mật mã, quyền hạn sử dụng v.v...  Tạo nhật ký (LOG) thao tác CSDL. Mỗi thao tác trên CSDL ñều ñược hệ thống ghi lại, khi có sự cố xảy ra thì tự ñộng lần ngược 3. Có biện pháp bảo mật tốt khi có yêu cầu bảo mật lại (RollBack) ñể phục hồi CSDL. DBMS01 – Slides 9 DBMS01 – Slides 10 Hệ quản trị CSDL Hệ quản trị CSDL Các thành phần của hệ quản trị CSDL Kiến trúc của hệ quản trị CSDL 6. Hệ quản trị CSDL phải cung cấp một giao diện (Interface) tốt, dễ sử dụng, dễ hiểu cho những người sử dụng không chuyên 7. Bảo ñảm tính ñộc lập giữa dữ liệu và chương trình  Khi có sự thay ñổi dữ liệu (như sửa ñổi cấu lưu trữ các bảng dữ liệu, thêm các chỉ mục (Index) ...) thì các chương trình ứng dụng (Application) ñang chạy trên CSDL ñó vẫn không cần phải ñược viết lại, hay cũng không làm ảnh hưởng ñến những NSD khác. DBMS01 – Slides 11 DBMS01 – Slides 12
  4. Hệ quản trị CSDL Khái niệm cơ sở dữ liệu Các ñối tượng sử dụng CSDL 1. Người dùng cuối (End User)  Sử dụng những công cụ hỗ trợ ñể khai thác  Ứng dụng này do chuyên viên tin học tạo ra 2. Người lập trình ứng dụng (Application Programmer)  Xây dựng ứng dụng kết nối CSDL 3. Người quản trị CSDL (DBA – Database Administrator)  Tạo lập CSDL  Phục hồi hệ thống khi có sự cố xảy ra  Cấp phát quyền hạn khai thác CSDL DBMS01 – Slides 13 DBMS01 – Slides 14 Lý do dùng hệ quản trị CSDL ñể lưu trữ? DBA Users/Programmers  ðầu tiên ñể lưu trữ dữ liệu người ta Database dùng hệ thống tập tin ñể lưu trữ. Cách System Database Application Programs/ lưu trữ này thể hiện một số nhược ñiểm Description Interactive Queries sau: DBMS  Dữ liệu lưu trữ bị dư thừa: Cùng một dữ liệu lưu ở nhiều hơn 1 nơi không cần thiết. DDL Data Compiler Access Query Processor  Dữ liệu không nhất quán: Do dữ liệu ñược lưu ở nhiều nơi nên khi cập nhật nếu không cập nhật toàn bộ sẽ dẫn ñến tình trạng không nhất quán của dữ liệu. Catalog Database DBMS01 – Slides 15 DBMS01 – Slides 16
  5. Ví dụ về lưu trữ theo hệ thống file  Dùng hệ quản trị CSDL ñể lưu trữ có các ưu ñiểm như sau:  Giảm thiểu sự dư thừa dữ liệu  Tránh ñược sự không ñồng nhất về dữ liệu  Dữ liệu ñược chia sẻ.  Dữ liệu sẽ ñược bảo mật an toàn hơn.  Tính nhất quán của dữ liệu sẽ ñược ñảm bảo. DBMS01 – Slides 17 DBMS01 – Slides 18 Các thành phần chức năng của Ví dụ về dùng hệ quản trị CSDL ñể hệ quản trị CSDL lưu trữ  Hệ quản trị cơ sở dữ liệu có các thành phần chức năng như sau:  Database manager: ñây là thành phần chính của hệ quản trị cơ sở dữ liệu. Thành phần này có nhiệm vụ ñáp ứng các lệnh truy vấn dữ liệu từ người dùng và ñảm bảo tính nhất quán của cơ sở dữ liệu.  File Manager: Thành phần này sẽ chịu trách nhiệm phục vụ tất cả các yêu cầu về dữ liệu. Nó sẽ liên hệ với disk manager ñể lấy các khối dữ liệu từ ñĩa.  Disk Manager: ñây là phần thực hiện việc quản lý dữ liệu ở cấp ñộ vật lý. DBMS01 – Slides 19 DBMS01 – Slides 20
  6. Quy trình phát triển cơ sở dữ liệu bao Lên kế hoạch phát triển cơ sở dữ liệu gồm 6 giai ñoạn:  Lên kế hoạch phát triển cho hệ quản trị cơ sở dữ liệu là quá trình chiến lược ñể tìm xem những  Lên kế hoạch ban ñầu: Trong giai ñoạn này, thông tin nào mà tổ chức sẽ cần thiết cho thời gian công ty sẽ thu thập thông tin về các ứng tới. dụng ñang dùng.  Lợi ích của việc lên kế hoạch phát triển database:  Nghiên cứu về tính khả thi: Trong giai ñoạn  Cho thấy rõ ñược tình trạng hiện tại của thông tin này sẽ nghiên cứu về tính khả thi của kỹ ñược lưu trong tổ chức. thuật, kinh tế và cách vận hành CSDL.  Tìm và ñiều chỉnh lại các yêu cầu về tài nguyên  ðịnh nghĩa các yêu cầu về CSDL: Giai ñoạn cho tổ chức. này xác ñịnh tầm vực của CSDL, các yêu cầu  Giúp cho phát triển ñược hệ quản trị CSDL ñáp về thông tin ñể quản lý, các yêu cầu về phần ứng ñược các yêu cầu của tổ chức. cứng, các yêu cầu về phần mềm.  Giúp cho việc lên kế hoạch hành ñộng ñể ñạt ñược các mục tiêu của tổ chức. DBMS01 – Slides 21 DBMS01 – Slides 22  Nếu ta phân tích, thiết kế và hiện thực CSDL  Thiết kế ở mức luận lý: Trong giai ñoạn này không tốt, cơ sở dữ liệu sẽ không hoạt ñộng sẽ thiết kế lược ñồ CSDL ở mức luận lý. giống như ta mong ñợi. Một số nguyên nhân  Hiện thực: Trong giai ñoạn này ta sẽ chọ hệ thường dẫn ñến CSDL hoạt ñộng sai như: quản trị CSDL và chuyển thiết kế từ mức luận  Người dùng trực tiếp của CSDL không ñược lý sang hiện thực trên hệ quản trị CSDL vừa xác ñịnh ñầy ñủ khi phân tích và thiết kế. chọn.  Dữ liệu ñược thu thập quá ít.  ðánh giá và bảo trì cơ sở dữ liệu: sau khi  Cơ sở dữ liệu không dễ dàng thay ñổi ñể ñáp thiết kế và hiện thực ta ñưa CSDL và dùng, ứng với sự thay ñổi về nghiệp vụ của tổ ñánh giá lại hiệu quả của CSDL và ñồng thời chức… phải bảo trì nâng cấp CSDL ñã hiện thực. DBMS01 – Slides 23 DBMS01 – Slides 24
  7. Mô hình dữ liệu Ví dụ mô hình ER  Mô hình dữ liệu mô tả cách tổ chức dữ liệu MaHP bên trong CSDL. Diem Nam Hocky Gvien (0,n) (1,1) hoc HPhan mo mhoctruoc  Mô hình dữ liệu còn mô tả mối quan hệ dữ MaSV Ten (1,n) MaMH TenMH (0,n) liệu và các ràng buộc ñược ñịnh nghĩa trên Lop SVien Khoa Tinchi MHoc Nganh dữ liệu ñó. (0,n) dieukien (0,n) mhocsau  Mô hình dữ liệu ñược dùng rộng rãi nhất là mô hình thực thể - kết hợp (Entity Relationship Model) DBMS01 – Slides 25 DBMS01 – Slides 26 Ví dụ mô hình ñối tượng Ví dụ mô hình quan hệ SVien Ten HPhan Lop hoc SVien Hoc HPhan Ten Nganh SLuong MaSV MaSV MaHP 1..* 0..* LapTKB() InBangDiem() Ten MaHP SLuong 1 Lop DiemLT MaMH Diem Nganh DiemTH mo DiemTH DiemLT DiemPrj 0..* MHoc SuaDiem() DKien MHoc MaMH Ten MaMH Khoa +MHoc truoc TenMH SoTinChi MaMHTruoc 0..* Khoa CapNhatSTC() TinChi 0..* Dieu kien +MHoc sau DBMS01 – Slides 27 DBMS01 – Slides 28
  8. Ví dụ mô hình mạng Ví dụ mô hình phân cấp KQua Mức 1: SVien MHoc DiemTH DiemLT MHOC_SAU MHOC_MO MHOC_TRUOC HPhan SVien SVIEN_DIEM Mức 2: TenSV Lop Nganh HPhan DKien TenHP SLuong KQUA_HPHAN KQua MHoc Mức 3: TenMH Khoa TinChi DBMS01 – Slides 29 DBMS01 – Slides 30 Mô hình thực thể - kết hợp Ví dụ về sơ ñồ E/R  Mô hình thực thể - kết hợp dựa trên sự mô tả MANV các ñối tượng trong thế giới thực gọi là các NGSINH LUONG DCHI MAPHG TENPB HONV thực thể và các mối liên kết giữa chúng. NHANVIEN Lam_viec PHONGBAN  Sơ ñồ dùng ñể hiện thực mô hình thực thể TENNV mối liên kết gọi là sơ ñồ thực thể - kết hợp PHAI ERD (Entity Relationship Diagram). La_truong_phong  Các thành phần của sơ ñồ ERD: Phu_trach  Thực thể (Entity) DDIEM_DA  Mối quan hệ (Relationship) Phan_cong DEAN  Thuộc tính (Attribute) TENDA MADA DBMS01 – Slides 31 DBMS01 – Slides 32
  9. Thực thể (Entity) Ví dụ về thực thể  Thực thể là các ñối tượng, nơi chốn, con người… mà cần lưu giữ thông tin.  Thực thể ñược ñặt tên và ñược vẽ trong hình chữ nhật.  Thực thể có 2 loại là thực thể ñộc lập và thực thể phụ thuộc.  Thực thể phụ thuộc còn ñược gọi là thực thể yếu là thực thể mà sự tồn tại của nó phụ thuộc vào một thực thể khác.  Thực thể yếu ñược mô tả bằng hình chữ nhật có các cạnh bên ngoài là cạnh kép. DBMS01 – Slides 33 DBMS01 – Slides 34 Ví dụ về thực thể (tt) Mối quan hệ  Mối quan hệ thể hiện sự cộng tác giữa 2 thực thể.  Mối quan hệ ñược thể hiện bằng hình thoi chính giữa có tên quan hệ ñó.  Mối quan hệ có thể ñược tồn tại trên 2 thực thể hoặc trên cùng 1 thực thể. Giữa hai thực thể có thể có nhiều mối quan hệ.  Mối quan hệ có 3 dạng:  Quan hệ 1 – 1  Quan hệ 1 – n  Quan hệ n - n DBMS01 – Slides 35 DBMS01 – Slides 36
  10. Ví dụ về các mối quan hệ: Ví dụ về các mối quan hệ: DBMS01 – Slides 37 DBMS01 – Slides 38 Ví dụ về các mối quan hệ: Ví dụ về các mối quan hệ: DBMS01 – Slides 39 DBMS01 – Slides 40
  11. Ví dụ về các mối quan hệ: Ví dụ về các mối quan hệ: DBMS01 – Slides 41 DBMS01 – Slides 42 Thuộc tính  Thuộc tính thể hiện ñặc ñiểm của thực thể.  Thuộc tính ñược thể hiện bằng hình elipse, với tên thuộc tính ñược vẽ bên trong hình. Thuộc tính khóa ñược gạch dưới.  Các quan hệ cũng có thể có các thuộc tính. DBMS01 – Slides 43 DBMS01 – Slides 44
  12. Tóm tắt  Trong bài này bạn ñã ñược học:  ðịnh nghĩa hệ quản trị cơ sở dữ liệu (CSDL).  Người dùng của hệ quản trị cơ sở dữ liệu.  Mô tả sự cần thiết của cơ sở dữ liệu. Kiến trúc của HQTCSDL  Các thành phần trong CSDL.  Xác ñịnh sự cần thiết của việc lên kế hoạch phát triển CSDL.  Xác ñịnh các giai ñoạn phát triển cơ sở dữ liệu.  Xác ñịnh hậu quả của việc phân tích thiết kế CSDL nếu thực hiện không tốt.  Mô hình dữ liệu.  Sơ ñồ ERD DBMS01 – Slides 45  Thực thể, mối liên kết, thuộc tính Tổ chức file trong SQL Server Database Files  Một CSDL ñược lưu trữ trong các tập tin vật lý trên ñĩa cứng: Có 3 loại tập tin dùng ñể lưu trữ CSDL:  Một tập tin dữ liệu cơ sở (Primary Data files): dùng lưu trữ dữ liệu và các thông tin khởi ñộng Database (.mdf)  Các tập tin dữ liệu phụ (Secondary data files): chứa tất cả dữ liệu liên quan nhưng không ñặt trong Primary Data files (.ndf)  Log files: dùng chứa các thông tin cần thiết cho việc phục hồi các giao tác trong CSDL (.ldf) DBMS01 – Slides 47 DBMS01 – Slides 48
  13.  Cách cấp phát không gian lưu trữ: Database – Dữ liệu ñược lưu trong các khối 8kb liền nhau của không gian ñĩa gọi là trang (page), một CSDL (1MB) lưu trên 128 page Data (file) Log (file) – Các bảng, chỉ mục … ñược lưu trong các extent (bộ .mdf or .ndf .Idf nhớ mở rộng), mỗi extent có 8 trang kề nhau, một CSDL có 16 extent  Một tập tin CSDL có 5 thuộc tính :  Hoạt ñộng của transaction log: – Tên tập tin logic – Transaction log ghi nhận sự hiệu chỉnh dữ liệu (bởi – Tên tập tin vật lý các lệnh: Insert, update, Delete) – Một kích thước (size) ban ñầu – Trước hết SQL server chép các trang của Database – Một kích thước tối ña (maximum size) có sự thay ñổi vào 1 vùng RAM gọi là buffer cache – Gia số tăng kích thước (growth increment) – Mỗi câu lệnh hiệu chỉnh dữ liệu ñược ghi nhận lại Các thuộc tính và các thông tin khác ñược lưu trong thành vết và lưu vào tập tin log trước khi thay ñổi bảng hệ thống sysfiles ñó ñược tác ñộng vào CSDL (write –ahead log) DBMS01 – Slides 49 DBMS01 – Slides 50 Database Object Database Object Object Mô tả Object Mô tả Table Bảng quan hệ chứa dữ liệu View Bảng ảo, là 1 cách lấy dữ liệu từ table hay từ các View khác Data type Kiễu dữ liệu User-defined Là các function do programmer ñịnh nghĩa function Constraint Các quy tắc kiểm tra ràng buộc dữ liệu Stored Các giá trị mặc ñịnh nếu giá trị 1 field không Là các thủ tục do programmer ñịnh nghĩa Default procedure ñược nhập Trigger Là một dạng ñặc biệt của Procedure Rule Các thông tin về giá trị hợp lệ trong 1 field nhưng ñược thực hiện tự ñộng khi user thao tác dữ liệu lên bảng/view Là cấu trúc lưu trữ nhằm truy xuất nhanh dữ Index liệu DBMS01 – Slides 51 DBMS01 – Slides 52
  14. Chức năng của Hệ QTCSDL Ứng dụng của Hệ QTCSDL  Quản Lý Dữ Liệu  Hàng không  Quản Lý File  Ngân hàng  Quản Lý ðĩa  Sản xuất  Quản lý ñơn ñặt hàng  Quản lý bệnh viện  Thư viện  Khách sạn  v.v… DBMS01 – Slides 53 DBMS01 – Slides 54 Một số Hệ QTCSDL Mô hình thực thể  Sysbase  Thực thể (Entity)  Bảng (Table)  Oracle  Thuộc tính (Attribute)  Cột (column)  Microsoft SQL Server  Record  Dòng (row)  MySQL Server  Ingress  DB2 DBMS01 – Slides 55 DBMS01 – Slides 56
  15. Mô hình thực thể Bài tập tình huống  Thực thể (Entity)  Bảng (Table) Kết quả khảo sát hệ thống quản lý nhân sự tiền lương tại một công ty thu ñược kết quả như sau:  ðược biểu diễn bởi hình gì?  Mỗi nhân viên có một mã nhân viên duy nhất, có họ tên,  Hình chữ nhật ngày tháng năm sinh và ñược lãnh lương theo hệ bậc lương  Thuộc tính (Attribute)  Cột (column) của mình. ðồng thời một nhân viên chỉ thuộc biên chế của một và chỉ một phòng ban. VD: NV tên A có mã NV1 thuộc  ðược biểu diễn bởi hình gì? biên chế phòng kỹ thuật (mã phòng KT) sinh 1984 lãnh  Hình elip hay chấm ñen lương chuyên viên chính.  Thông tin cần quản lý về phòng ban bao gồm: tên phòng  Record  Dòng (row) ban, mã phòng, số lượng nhân viên và người trưởng phòng.  Mối kết hợp(1-1, 1-n, n-n)  Relationship VD: Phòng kỹ thuật có mã phòng KT có 5 nhân viên, trưởng  ðược biểu diễn bởi hình gì? phòng là nhân viên A.  Mức lương gồm tên, số tiền, mô tả yêu cầu công việc.  Hình thoi hay elip VD: Chuyên viên chính lương 2,5 triệu tối thiểu 5 năm kinh nghiệm. Yêu cầu: Vẽ mô hình ERD cho hệ thống quản lý tiền lương DBMS01 – Slides 57 nói trên. DBMS01 – Slides 58 Nội dung  Giới thiệu SQL  Làm việc với CSDL  Làm việc với bảng  Các truy vấn ñơn giản  Một số hàm:  xử lý chuỗi, thời gian, toán học,  hàm toán học.  Truy vấn nhóm (Group by)  Truy vấn trên nhiều quan hệ, truy vấn con DBMS01 – Slides 59 DBMS01 – Slides 60
  16. Giới thiệu SQL Lịch sử SQL  SQL – Structured Query Language  Thập kỉ 70, IBM phát triển SEQUEL cho System R.  Thao tác trên dữ liệu (thêm, lấy, xóa,  1978, SQL ñi vào sản phẩm thương mại sửa), tạo CSDL.  1986, ANSI công bố chuẩn SQL-86  ðược ANSI và ISO chuẩn hóa  1987, ANSI phê chuẩn SQL-87  Ngôn ngữ SQL chia làm 3 nhóm:  1992, SQL-2 hay còn gọi là SQL-92  Ngôn ngữ ñịnh nghĩa dữ liệu (DDL)  1999, SQL-3 hay còn gọi là SQL-99  2003: SQL-2003: không miễn phí  Ngôn ngữ thao tác dữ liệu (DML)  2006: SQL-2006: không miễn phí  Ngôn ngữ kiểm soát dữ liệu (DCL) DBMS01 – Slides 61 DBMS01 – Slides 62 Một số chú ý Làm việc với CSDL  SQL không phân biệt chữ hoa, chữ thường.  ðặt tên: Dùng chữ cái (A-Z, a-z), số (0-  Câu lệnh SQL thường kết thúc bằng dấu “;”  MS SQL Server dùng GO ñể ñánh dấu kết thúc một 9), gạch dưới (_). Nếu muốn dùng lệnh. khoảng trắng thì bọc trong cặp []. CREATE DATABASE QLSV; GO USE QLSV; GO  Viết chú thích trong MS SQL Server:  Một dòng: --  Nhiều dòng: /* ... */ DBMS01 – Slides 63 DBMS01 – Slides 64
  17. Tạo CSDL Tạo CSDL Tạo một CSDL có tên QuanLyDiemHocVien với kích  Mặc ñịnh CSDL lưu ở: thước ban ñầu lúc khởi tạo là 50MB, tự ñộng tăng kích thước lên 10% khi bị ñầy, kích thước tăng trưởng tập C:\Program Files\Microsoft SQL tin tối ña không quá 200MB. Tập tin lưu vết lúc ban ñầu lúc khởi tạo là 10MB, tự ñộng tăng kích thước lên Server\MSSQL\Data 5MB khi dữ liệu bị ñầy, kích thước tăng trưởng tập tin  Lưu ý: Không ñược xóa CSDL bằng cách mở không giới hạn. Windows Explorer ñể xóa các tập tin dữ liệu CREATE DATABASE QuanLyDiemHocVien trong C:\Program Files\Microsoft SQL ON PRIMARY (NAME = QuanLyDiemHocVien, Server\MSSQL\Data vì làm ảnh hưởng ñến hệ FILENAME='c:\QuanLyDiemHocVien.mdf', SIZE = thống CSDL trong MS SQL Server. 50MB, MAXSIZE = 200MB, FILEGROWTH = 10%) LOG ON (NAME = QuanLyDiemHocVien_Log, FILENAME='c:\QuanLyDiemHocVien.ldf', SIZE = 10MB, MAXSIZE = UNLIMITED, FILEGROWTH = 5MB) DBMS01 – Slides 65 DBMS01 – Slides 66 QUẢN TRỊ CSDL QUẢN TRỊ CSDL  Thêm file mới: 1. Thay ñổi kích thuớc của CSDL: có 2 cách ALTER DATABASE Logical_database_name  Hiệu chỉnh kích thước của file: ADD FILE ALTER DATABASE database_name ( NAME = logical_file_name, MODIFY FILE FILENAME = ‘path\filename.ndf', (NAME = logic_name, SIZE = size, FILE NAME =‘ path/file_name’, MAXSIZE = maxsize, SIZE = size, FILEGROWTH = filegrowth_increment ) MAXSIZE = maxsize, [TO FILEGROUP filegroup_name] FILEGROWTH = filegrowth_increament) DBMS01 – Slides 67 DBMS01 – Slides 68
  18. QUẢN TRỊ CSDL QUẢN TRỊ CSDL 2. Thu nhỏ (Shrinking) Databases or Files 3. ðổi tên CSDL:  Thu nhỏ một CSDL tự ñộng: Dùng hàm sp_renamedb ‘old_name’, ALTER DATABASE database_name ‘new_name’ SET AUTO_SHRINK 4. Tạo script cho CSDL và các ñối tượng  Thu nhỏ một CSDL bằng tay: của CSDL: DBCC SHRINKDATABASE  Chọn CSDL cần tạo script Click phải  (database_name, targer_percent) All Tasks DBCC SHRINKFILE  Trang General: Chọn ñối tựơng cần tạo (file_name, targer_percent) script  Trang formating: ðịnh dạng script DBMS01 – Slides 69 DBMS01 – Slides 70 Làm việc với bảng Một số kiểu dữ liệu  Dùng T-SQL: CREATE TABLE table_name (column_name datatype [NULL | NOT NULL] [IDENTITY (SEED,INCREMENT)], column_name datatype …) [ON {filegroup} | DEFAULT] Ví dụ: CREATE TABLE Sinhvien (Masv char(5) NOT NULL, Hoten nchar(40) NOT NULL, Diachi nchar(50) NOT NULL) DBMS01 – Slides 71 DBMS01 – Slides 72
  19.  Liệt kê các bảng trong CSDL hiện tại:  Thêm một trường (cột): ALTER TABLE table_name  sp_help; ADD COLUMN column_name data_type;  Thay ñổi tên bảng: ALTER TABLE SinhVien ADD COLUMN DiaChi varchar(100) NULL ;  sp_rename ‘tên cũ’, ‘tên mới’  Xoá một trường (cột):  Xóa bảng: DROP TABLE tên_bảng; ALTER TABLE table_name DROP COLUMN column_name;  Liệt kê các cột của một bảng:  Sửa tên cột:  sp_columns tên_bảng; sp_rename 'TableName.ColumnName', 'NewColumnName', ‘COLUMN' DBMS01 – Slides 73 DBMS01 – Slides 74 Các giá trị mặc ñịnh Giá trị NULL  Giá trị nào sẽ ñược ñiền vào các cột  Giá trị ñặc biệt trong SQL mới ñược bổ sung?  ðược dùng khi không xác ñịnh ñược giá  NULL trị của một thuộc tính của một bản ghi.  Tự ñịnh nghĩa  Ví dụ: Tên ñệm có thể có hoặc không.  ðịnh nghĩa giá trị mặc ñịnh: CREATE TABLE SinhVien ( column_name data_type DEFAULT sid int Primary Key, default_value name varchar(50) NOT NULL, class varchar(10) NOT NULL,  Sử dụng ở bất kỳ chỗ nào có khai báo address varchar(100)); thêm cột và kiểu dữ liệu tương ứng. DBMS01 – Slides 75 DBMS01 – Slides 76
  20.  Chèn dữ liệu: VD: UPDATE SinhVien SET class=‘CNTT06CM’ INSERT [INTO] TableName VALUES (val1, WHERE class=‘CNTT06CaMau’; val2,…)  Xóa dữ liệu: INSERT [INTO] DELETE FROM TableName TableName(column1,…,columnN) VALUES [WHERE condition]; (val1,…, valN) VD: DELETE FROM SinhVien Insert into SinhVien(sid,class,name) VALUES WHERE name=‘Nguyen Van A’; (112,’k51c’,’Nguyen Van A’);  Xóa toàn bộ nội dung bảng:  Cập nhật dữ liệu: DELETE FROM TableName; UPDATE TableName SET columnN= valN [WHERE condition]; DBMS01 – Slides 77 DBMS01 – Slides 78 Một số câu lệnh  In ra màn hình: PRINT content; PRINT 123; PRINT ‘Cau truy van’; Các câu truy vấn ñơn giản  In ra màn hình bằng Select: SELECT ‘Xin chao’; SELECT 12, 34; --In giá trị 12, 34 thành 2 cột SELECT 12 AS ‘Tuổi’ --ðặt tên cho cột  Print và các phép toán: PRINT 125 + 4088 PRINT 128 % 42 PRINT 154 - (12 + 8) DBMS01 – Slides 79
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2