Bài 02 : Hệ quản trị cơ sở dữ liệu

Bài 02 : Hệ quản trị cơ sở dữ liệu

  

I.Khái niệm:

a/ CSDL là một tập hợp dữ liệu được lưu trữ một cách có tổ chức nhằm giúp việc xem, tìm kiếm và lấy thông tin được nhanh chóng và chính xác, giúp giảm công sức và thời gian quản lý thông tin cần thiết.
Bảng dữ liệu: Là thành phần trung tâm của CSDL, được dùng để lưu trữ thông tin của CSDL 
❖ Gồm hai thành phần: dòng và cột 
-     Cột: là một khối dữ liệu trong bảng, có cùng loại dữ liệu, có các thông tin chính: 
    ▪ Tên cột: dùng để phân biệt với các cột khác trong bảng. Tên cột trong bảng phải duy nhất và không dùng các ký tự đặc biệt. 
    ▪ Kiểu dữ liệu của cột: xác định loại giá trị nào được phép lưu trữ trong cột
-    Dòng: là tập hợp các thông tin của tất cả cột dữ liệu trong bảng
     ▪ Mỗi dòng trong bảng khách hàng lưu trữ thông tin về một khách hàng trong thực tế.

b/ Quan hệ:Là thành phần được dùng để tạo mối liên kết giữa các bảng dữ liệu với nhau nhằm đảm bảo tính nhất quán, đúng đắn của dữ liệu trong CSDL 
❖ Có ba loại quan hệ chính: 
-    Quan hệ 1 – 1 : Mô tả mối quan hệ giữa hai bảng mà trong đó một dòng dữ liệu bên bảng này có liên hệ với duy nhất với một dòng dữ liệu bên bảng kia và ngược lại
-     Quan hệ 1 – nhiều :Mô tả mối quan hệ giữa hai bảng mà trong đó một dòng dữ liệu bên bảng này có liên hệ với nhiều dòng dữ liệu bên bảng kia và một dòng dữ liệu bên bảng kia sẽ có liên hệ với duy nhất với một dòng dữ liệu bên bảng này. Quan hệ này thường gặp nhất trong CSDL
-     Quan hệ nhiều – nhiều:Mô tả mối quan hệ giữa hai bảng mà trong đó một dòng dữ liệu bên bảng này có liên hệ với nhiều dòng dữ liệu bên bảng kia và ngược lại. Trong CSDL không lưu trữ quan hệ nhiều nhiều vì vậy khi gặp quan hệ này, chúng ta sẽ chuyển thành các quan hệ một nhiều.

c/ SQL (Structured Query Language) là ngôn ngữ truy vấn dữ liệu 
❖ Là loại ngôn ngữ cho phép thực hiện các thao tác rút trích, tính toán, cập nhật trên các dữ liệu được lưu trữ trong CSDL

1/ CSDL MySQL:là tập hợp các đối tượng: bảng, bảng ảo,… cho phép người dùng lưu trữ và truy xuất các thông tin đã được tổ chức và lưu trữ bên trong đó.

-    Đặc điểm SQL: Sử dụng cho các ứng dụng Web có quy mô vừa và nhỏ. Để thực hiện các thao tác trên CSDL, có thể sử dụng giao diện đồ họa hay dùng dòng lệnh (command line).
Các tập tin vật lý lưu trữ CSDL  Mỗi bảng sẽ được lưu trữ dưới ba tập tin vật lý: 
    ▪ .frm : lưu định dạng (cấu trúc) của bảng 
    ▪ .MYD : lưu nội dung của bảng 
    ▪ .MYI : lưu chỉ mục của bảng 
❖ Các tập tin này sẽ được tự động lưu trữ trong thư mục: wamp\mysql\data\name_database.
❖ Quy tắc đặt tên: 
-    Tên không kết thúc bằng khoảng trắng 
-     Tên CSDL không có các ký tự /, \, ., :, *, ‘’, <, > 
-     Tên bảng không có các ký tự /, \, ., :, *, ‘’, <, >, | 
-     Chiều dài của tên tối đa là 64 ký tự không dấu. Khi sử dụng các ký tự đa byte thì chiều dài sẽ dựa trên tổng số byte của tất cả các ký tự được dùng.
2.Thao tác MySQL
❖ Tạo CSDL 
-     Cú pháp: CREATE DATABASE [IF NOT EXISTS] ten_CSDL;
❖ Hiển thị các CSDL  Cú pháp: SHOW DATABASES;
❖ Xóa Cơ sở Dữ liệu  Cú pháp: DROP DATABASE [IF EXISTS] database_name;
❖ Chọn CSDL để làm việc  Cú pháp: USE database_name; 

 II.Bảng

1.Khái niệm:

❖ Dùng để lưu trữ thông tin của những đối tượng, thực thể trong thế giới thực muốn được lưu trữ vào máy tính 
❖ Các thông tin trong bảng sẽ được tổ chức thành các dòng (row) và các cột (column). 
❖ Mỗi dòng thông tin trong bảng là duy nhất do có một hoặc nhiều cột làm khóa chính. Dữ liệu của cột làm khóa chính không trùng lắp trong bảng 
❖ Các bảng thường có quan hệ với nhau giúp trao đổi và chia sẻ thông tin 

2.Thuộc tính:

❖ Tên bảng (table name) 
-     Do người dùng tạo ra 
-     Duy nhất trong CSDL 
❖ Tên cột 
-    Do người dùng tạo ra 
-     Duy nhất trong bảng 
❖ Kiểu dữ liệu (type): Xác định loại dữ liệu được lưu trữ trên từng cột

3.Thuộc tính:

❖ Kiểu dữ liệu (type): Xác định loại dữ liệu được lưu trữ trên từng cột 
-     Các kiểu dữ liệu số nguyên 
-    Các kiểu dữ liệu true/false
❖ Kiểu dữ liệu (type): 
-     Kiểu dữ liệu dạng số thập phân: decimal và numeric 
    ▪ Là những kiểu dữ liệu được dùng để lưu trữ những giá trị số cụ thể. 
    ▪ Giá trị được lưu với định dạng nhị phân 
    ▪ Cú pháp: Decimal(M[, N] Trong đó: M là tổng ký số và N là số ký số thập phân
-    Các kiểu dữ liệu số thực
❖ Kiểu dữ liệu (type):
-    Các kiểu dữ liệu dạng ngày/giờ (date/time) 
❖ Kiểu dữ liệu (type): 
-    Các kiểu dữ liệu dạng ngày/giờ (date/time) 
    ▪ Bảng kích cỡ định dạng (TIMESTAMP)
❖ Kiểu dữ liệu (type): 
-    Các kiểu dữ liệu kiểu chuỗi
❖ Kiểu dữ liệu (type): 
-    Các kiểu dữ liệu kiểu chuỗi 
    ▪ So sánh khác nhau giữa kiểu char và kiểu varchar
❖ Độ dài dữ liệu (length/value): Quy định độ dài dữ liệu mà cột sẽ lưu trữ đối với kiểu dữ liệu chuỗi hoặc số 
❖ Kiểu hiển thị (collation): Quy định bảng mã hiển thị cho dữ liệu trong cột. 
❖ Thuộc tính (attribute): Quy định thuộc tính cho cột, mặc định là không quy định 
❖ Cho phép để trống dữ liệu (NULL): Quy định cột có thể để trống hay không khi thêm, cập nhật dữ liệu 
❖ Giá trị mặc định (default):Là giá trị sẽ thêm vào cho cột khi thêm mới mẩu tin mà người dùng không nhập giá trị cho cột 
❖ Thuộc tính mở rộng (extra): Cho phép thiết lập thuộc tính auto increment (cột có giá trị tự động tăng dần khi thêm mới mẩu tin) cho khóa chính 
❖ Ghi chú (comment): Chuỗi chú thích cho cột

III.Ràng buộc: 

❖ NOT NULL: Ràng buộc này yêu cầu giá trị của cột không được phép là NULL 
❖ PRIMARY KEY (ràng buộc khóa chính): Ràng buộc này định nghĩa một cột hoặc một tổ hợp các cột xác định duy nhất mỗi dòng trong bảng 
❖ UNIQUE: ràng buộc yêu cầu các giá trị của cột là phân biệt. Chú ý với ràng buộc này giá trị của cột có thể là NULL nếu ràng buộc NOT NULL không được áp dụng trên cột
❖ Phân biệt giữa primary và unique
❖ Ràng buộc khóa chính khai báo theo kiểu ràng buộc mức cột 
Column_name datatype [CONSTRAINT constraint_name] PRIMARY KEY 
❖ Ràng buộc khóa chính khai báo theo kiểu ràng buộc mức bảng 
[CONSTRAINT constraint_name] PRIMARY KEY (column_name1,column_name2,..) 
❖ Đặt tên ràng buộc: CONSTRAINT 
❖ Mục đích: khi cập nhật dữ liệu vi phạm ràng buộc, hệ quản trị CSDL thường đưa tên ràng buộc vào thông báo lỗi. Hơn nữa có thể sử dụng tên ràng buộc khi sửa đổi hoặc xóa ràng buộc.
❖ FOREIGN KEY (Ràng buộc khóa ngoài)
❖ Tạo cột duy nhất: UNIQUE (các_cột_duy_nhất)
❖ Xác định cột tự tăng giá trị Auto_Increment 
-     Tạo ra cột có giá trị tự động tăng dần 
-     Thuộc tính auto_increment chỉ có thể thiết lập cho cột có kiểu dữ liệu là kiểu số nguyên. 
-     Trong một bảng, chỉ có thể có một cột có thuộc tính auto_increment, cột này phải là khóa và không thiết lập giá trị mặc định DEFAULT 

Đăng nhận xét

0 Nhận xét

myadcash