Tải bản đầy đủ (.pptx) (69 trang)

Một số hệ quản trị mã nguồn mở - Tìm hiểu quản trị CSDL PostgreSQL ppt

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (809.61 KB, 69 trang )

LOGO
1
o
Một số hệ quản trị mã nguồn mở
o
Tìm hiểu quản trị CSDL PostgreSQL
Giáo viên: Nguyễn Trần Minh Thư
Nhóm 07
1041010 – Trần Ngọc Anh
1041102 – Nguyễn Hồng Phấn
1041108 – Nguyễn Hồng Phương
1041392 – Chương Tiên Phát
Hệ quản trị mã nguồn mở

My SQL

Oracle

SqLite

PostgreSQL
2
Hệ quản trị mã nguồn mở

MySQL

MySql là HQTCSDL mã nguồn mở phổ biến nhất thế giới.

Sử dụng ngôn ngữ truy vấn có cấu trúc (SQL).

MySQL là cơ sở dữ liệu tốc độ cao, ổn định, bảo mật và dễ sử dụng.



Phát triển bởi công ty MySQL AB.

Phiên bản mới nhất: 5.0.17 vào ngày 21 tháng 12 năm 2005.

Hệ điều hành: Đa hệ điều hành

Thể loại: RDBMS (relational database management system)

Website: www.mysql.com
3
Hệ quản trị mã nguồn mở

Oracle

Oracle là một HQTCSDL quan hệ đối tượng phổ biến trên thế giới (ORDBMS).

Oracle cung cấp một HQTCSDL mềm dẻo gồm CSDL Oracle , môi trường cho việc thiết kế các cơ sở dữ liệu,
các công cụ phát triển.

HQTCSDL có tính an toàn , bảo mật cao, tính nhất quán và toàn vẹn dữ liệu.
4
Hệ quản trị mã nguồn mở

Oracle

Được cung cấp bởi công ty ORACLE.

Phiên bản mới nhất: Oracle Database 11g phát hành vào tháng 9 năm 2011.


Viết bằng ngôn ngữ: C, C++.

Loại: ORDBMS.

Hệ điều hành: Đa hệ điều hành.

Website: www.oracle.com
5
Hệ quản trị mã nguồn mở

SqLite

SqLite là phần mềm quản lý cơ sở dữ liệu (DBMS).

Đặc điểm của SQLite là gọn, nhẹ, đơn giản.

Sử dụng dưới dạng thư viện nhúng, không chạy theo kiểu server độc lập.

Hỗ trợ các ngôn ngữ phổ biến: C, C++, C#, Basic, Perl, Ruby, Python, PHP, Java

Hỗ trợ mã UTF8, command line, transaction, view, C extensions.
6
Hệ quản trị mã nguồn mở

SQLite

Có các công cụ quản lý bằng đồ hoạ.

Download & sử dụng miễn phí.


Phát triển bởi D.Richard Hipp.

Phiên bản: Hiện tại SQLite có 2 nhánh khác nhau là version 2.x và version 3.x. Lệnh sqlite là của version 2.x,
sqlite3 là lệnh của version 3.x.

Loại: RDBMS

Hệ điều hành: Nền tảng Cross.

Website:
7
PostgreSQL

Giới thiệu tổng quan

Ngôn ngữ SQL

Các kiểu dữ liệu

Kiểu dữ liệu tự định nghĩa

Hàm và các toán tử

Tính năng khác

Công cụ hỗ trợ PostgreSQL

Khách hàng nổi bật
8
Giới thiệu PostgreSQL


PostgreSQL là gì?

PostgreSQL là một HQTCSDL quan hệ và đối tượng dựa trên Postgres (ORDBMS: object-relational
database management system).

Được phát triển bởi khoa điện toán của đại học California tại Berkeley.

PostgreSQL là một chương trình mã nguồn mở xây dựng trên mã nguồn ban đầu của đại học Berkeley.

PostgreSQL theo chuẩn SQL99.

Được phát triển từ hơn 15 năm, tương thích chuẩn SQL, khả năng làm việc trên cơ sở dữ liệu lớn, đang
dần tiến gần đến doanh nghiệp.
9
Giới Thiệu PostgreSQL

Giao diện lập trình ứng dụng.

Công cụ hỗ trợ lập trình.

Công cụ quản trị.

Được viết bằng ngôn ngữ C.

Hệ điều hành: đa hệ điều hành.

Thể loại: ORDBMS (object-relational database management system).

Website: />10

Đặc điểm PostgreSQL

Câu truy vấn phức hợp (complex query).

Khóa ngoại (foreign key).

Thủ tục sự kiện(trigger).

Các khung nhìn(view).

Tính toàn vẹn của các giao tác (trigger).

Kiểm tra truy cập đồng thời đa phiên bản (multiversion concurrency control).

PostgreSQL có thể dùng trong nhiều trường hợp, như tạo ra kiểu dữ liệu, hàm, toán tử, hàm tập hợp,
ngôn ngữ theo thủ tục.
11
Lịch sử của PostgreSQL

Từ INGRES đến POSTGRES (1977-1994): Năm 1971 được giáo sư
Michael Stonebraker nghiên cứu.

INGRES: Ra đời vào năm 1977 là mô hình quan hệ.

POSTGRES: Phát triển năm 1986, là mô hình đối tượng, ngôn ngữ
truy vấn QUEL.

Từ POSTGRES đến PostgreSQL (1994-1996)
o
Hỗ trợ ngôn ngữ SQL từ năm 1994.

o
Phiên bản Postgres95 ra đời vào năm 1995.
o
Phiên bản PostgreSQL 6.0 ra đời vào năm 1996.
o
Phiên bản mới nhất: 9.1.3 ngày 27/02/2012.
12
Lịch sử của PostgreSQL
13
PostgreSQL và các HQT CSDL khác

Thông tin chung
14
PostgreSQL và các HQT CSDL khác

Hệ điều hành được hỗ trợ
15
PostgreSQL và các HQT CSDL khác

Tính năng cơ bản
16
PostgreSQL và các HQT CSDL khác

Các đối tượng khác
17
PostgreSQL

Giới thiệu tổng quan

Ngôn ngữ SQL


Các kiểu dữ liệu

Kiểu dữ liệu tự định nghĩa

Hàm và các toán tử

Tính năng khác

Công cụ hỗ trợ PostgreSQL

Khách hàng nổi bật
18
Ngôn ngữ SQL

Ngôn ngữ SQL

Khái niệm

Tạo Table-Xóa Table

Insert –Copy

Truy vấn trên Table

Kết giữa các Table

Hàm tổng hợp

Cập nhật - Xóa

19
Ngôn ngữ SQL

Khái niệm

PostgreSQL là hệ thống QTCSDL quan hệ

Mỗi Table tập trung các dòng.
o
Mỗi dòng của 1 bảng có cùng các cột được đặt tên
o
Mỗi cột có 1 kiểu dữ liệu cụ thể

Tạo Table
CREATE TABLE <tên bảng>(<tên thuộc tính><kiểu dữ liệu>,<tên thuộc tính><kiểu dữ liệu>,…);

Xóa Table
DROP TABLE <tên bảng>;
20
Ngôn ngữ SQL

Insert

Xác định thứ tự của giá trị insert
INSERT INTO <tên bảng> VALUES (<giá trị thuộc tính>,<giá trị thuộc tính>,…);

Không xác định thứ tự của giá trị insert
INSERT INTO <tên bảng>(<tên thuộc tính>,<tên thuộc tính>,…) VALUES (<giá trị thuộc tính>,<giá trị thuộc
tính>,…);
21

Ngôn ngữ SQL

Copy

Có thể sử dụng để tải một lượng lớn dữ liệu từ tập tin văn bản có dữ liệu theo cấu trúc của bảng

COPY <tên bảng> FROM <đường dẫn file>;
COPY sinhvien(hoten,ngaysinh,noisinh,diemlt,diemth,lop) FROM ‘D:\test.txt’ DELIMITER(‘,’);

Nội dung test.txt
Ly Minh, 1989-10-10,Ben tre,7,8,10HCA
Ly Hung, 1989-11-11,Ben tre,7,9,10HCB
22
Ngôn ngữ SQL

Truy vấn trên Table

Truy vấn toàn bộ bảng
SELECT * FROM <tên bảng>;

Truy vấn thuộc tính cụ thể của bảng
SELECT <tên thuộc tính>,… FROM <tên bảng>;

Tính toán trên thuộc tính hiển thị
SELECT MSSV, (diemlt+diemth)/2 AS diem
FROM SinhVien;
23
Ngôn ngữ SQL

Lọc dữ liệu: AND, OR, NOT

SELECT * FROM SinhVien
WHERE lop = ’10HCA’
AND diem>8.0;

Lấy dữ liệu không trùng lắp: DISTINCT
SELECT DISTINCT noisinh
FROM SinhVien;

Sắp xếp kết quả truy vấn: ORDER BY
SELECT DISTINCT noisinh
FROM SinhVien
ORDER BY noisinh;
24
Ngôn ngữ SQL

Kết giữa các Table

Truy vấn bằng phép kết bảng
o
Có những record không trùng khớp giữa 2 bảng => Một số TH sẽ mất mát dữ liệu
o
SELECT mssv, hoten, ngaysinh, noisinh, diem, lop
FROM SinhVien sv, Lop l
WHERE sv.lop=l.tenlop;

Truy vấn bằng JOIN
o
Inner join
SELECT * FROM SinhVien sv
INNER JOIN Lop l ON (sv.lop=l.tenlop);

25

×