So sánh các hệ quản trị cơ sở dữ liệu quan hệ

bài viết danh sách Wikimedia

Bảng sau đây so sánh các thông tin chung và chi tiết về kỹ thuật của các hệ thống quản trị cơ sở dữ liệu quan hệ. Nhắp chuột vào tên hệ thống để xem thêm thông tin chi tiết. Bảng so sánh này chưa bao gồm tất cả các hệ thống quản trị cơ sở dữ liệu quan hệ hiện có và có thể chưa được cập nhật các tính năng mới nhất của các hệ thống. Ngoại trừ các ghi chú thêm, sự so sánh sau đây là dựa trên phiên bản ổn định của các hệ thống quản trị cơ sở dữ liệu quan hệ chưa thêm công cụ bổ sung, mở rộng hoặc chương trình ngoài.

Thông tin chung

Công tyNgày phát hành phiên bản đầu tiênPhiên bản ổn định mới nhấtGiấy phép sử dụng
Adaptive Server EnterpriseSybase198715.0Độc quyền
ADSADS20033.4Độc quyền
Apache DerbyApache200410.1.2.1Giấy phép Apache
DB2IBM19828.2Độc quyền
FirebirdFirebird FoundationNgày 25 tháng 7 năm 20001.5.3Giấy phép Initial Developer's Public
InformixIBM198510.0Độc quyền
HSQLDBHSQL Development Group20011.8.0BSD
H2H2 Software20050.9Miễn phí
Ingres (cơ sở dữ liệu)Ingres Corp.1974Ingres 2006 II 9.0.4GPL và Độc quyền
InterBaseBorland19857.5.1Độc quyền
MaxDBMySQL AB, SAP AG?7.6GPL or Độc quyền
Microsoft SQL ServerMicrosoft19899.00.1399 (2005)Độc quyền
MySQLMySQL ABTháng 11 năm 19965.0GPL or Độc quyền
OracleOracle Corporation197710g Release 2Độc quyền
PostgreSQLPostgreSQL Global Development GroupTháng 6 năm 19898.1.3BSD
Pyrrho DBMSUniversity of PaisleyTháng 11 năm 20050.5Độc quyền
SmallSQLSmallSQLNgày 16 tháng 4 năm 20050.12LGPL
SQLiteD. Richard HippNgày 17 tháng 8 năm 20003.3.5Public domain
TeradataTeradata1984V2R6.1Độc quyền
WX2Kognitio19885.xĐộc quyền
Công tyNgày phát hành phiên bản đầu tiênPhiên bản ổn định mới nhấtGiấy phép sử dụng

Hệ điều hành được hỗ trợ

Các hệ quản trị cơ sở dữ liệu quan hệ trên có thể chạy trên những hệ điều hành sau:

WindowsMac OS XLinuxBSDUNIXz/OS 1
Adaptive Server EnterpriseKhông
ADSKhông
Apache Derby 2
DB2KhôngKhông
FirebirdMaybe
HSQLDB 2
H2 2Maybe
InformixKhông
IngresCó thể
InterBaseKhôngKhôngCó (Solaris)Không
AdabasKhôngKhông
MaxDBKhôngKhôngCó thể
Microsoft SQL ServerKhôngKhôngKhôngKhôngKhông
MySQLCó thể
OracleKhông
PostgreSQLCó thể
Pyrrho DBMSCó (.NET)KhôngCó (Riêng lẻ)KhôngKhôngKhông
SmallSQL
SQLiteCó thể
TeradataKhôngKhôngKhông
WindowsMac OS XLinuxBSDUNIXz/OS 1

Ghi chú (1): Hệ quản trị có mã nguồn mở có tính năng tương thích với UNIX sẽ chạy trên z/OS, một hệ thống con được dựng sẵn trong hệ thống dịch vụ của UNIX.

Ghi chú (2): Hệ quản trị cơ sở dữ liệu phụ thuộc vào máy ảo Java không phụ thuộc vào hệ điều hành

Tính năng cơ bản

Thông tin về tính năng cơ bản của RDDBMS (Hệ thống quản trị cơ sở dữ liệu quan hệ) dưới đây đều được hỗ trợ sẵn.

ACIDReferential integrityTransactionsUnicode
Adaptive Server Enterprise
ADS
Apache Derby
DB2
Firebird
HSQLDB
H2
Informix
Ingres
InterBase
MaxDB
Microsoft SQL Server
MySQLPhụ thuộc 3Phụ thuộc 3Phụ thuộc 3Có / UTF-8 (3-byte) & UCS-2
Oracle
PostgreSQLCó / UTF-8 (4-byte)
Pyrrho DBMS
SQLiteKhông 4Cơ bản 4
Teradata
ACIDReferential integrityTransactionsUnicode

Ghi chú (3): Để giao dịch và toàn vẹn liên quan, bảng kiểu InnoDB buộc phải sử dụng làm kiểu mặc định, MyISAM không hỗ trợ tính năng này. Mặc dù vậy ngay cả khi kiểm của bảng là InnoDB cho phép lưu trữ giá trị của nó vượt qua giới hạn giới hạn giữ liệu; một vài khung nhìn vẫn bắt buộc phải tuân thủ tính toàn vẹn của ACID.

Ghi chú (4): FOREIGN KEY constraints are parsed but are not enforced. Triggers can be used instead. Nested transactions are not supported. [1]

Bảng và khung nhìn

Thông tin về bảng và khung nhìn  3 được hỗ trợ sẵn trong hệ thống.

Bảng tạmKhung nhìn cụ thể
Adaptive Server EnterpriseCó  5Không
ADS
Apache DerbyKhông
DB2
FirebirdKhôngKhông
HSQLDBKhông
H2Không
Informix
IngresIngres r4
InterBaseKhông
MaxDBKhông
Microsoft SQL Server
MySQLTương tự 6
Oracle
PostgreSQLTương tự 7
Pyrrho DBMSKhôngKhông
SQLiteKhông
Teradata
Bảng tạmKhung nhìn cố định

Note (5): Máy chủ cung cấp tempdb, là một bảng tạm sử dụng trong một phiên làm việc có thể sử dụng chung và riêng.[2] Lưu trữ 2007-06-30 tại Wayback Machine

Note (6): Tương tự như Postgres, khung nhìn cố định có thể giả lập bằng cách sử dụng thủ tục lưu trữ và triggers. Ví dụ: [3] Lưu trữ 2006-04-23 tại Wayback Machine.

Note (7): Khung nhìn cố định có thể giả lập với PL/pgSQL, PL/Perl, PL/Python, hoặc các ngôn ngữ thủ tục khác. Ví dụ: [4].

Chỉ mục

Thông tin chỉ mục được hỗ trợ sẵn trong các hệ thống quản trị cơ sở dữ liệu quan hệ.

Cây R-/Cây R+Hàm bămBiểu thức (lập trình)Chỉ mục từng phầnChỉ mục đảoBitmapGiST
Adaptive Server EnterpriseKhôngKhôngKhôngKhôngKhôngKhông
ADSKhôngKhông
Apache DerbyKhôngKhôngKhôngKhôngKhôngKhôngKhông
DB2Không?KhôngKhôngKhông
FirebirdKhôngKhôngKhôngKhôngKhôngKhôngKhông
HSQLDBKhôngKhôngKhôngKhôngKhôngKhôngKhông
H2KhôngKhôngKhôngKhôngKhôngKhôngKhông
InformixKhông
IngresIngres r4KhôngKhôngIngres r4Không
InterBase??KhôngKhôngKhôngKhôngKhông
MaxDB??KhôngKhôngKhôngKhôngKhông
Microsoft SQL Server?Non/Cluster & fill factorCó  8Có  9Có  8KhôngKhông
MySQLtrong SQL 5.0 MyISAM, BDB, hoặc bảng InnoDBchỉ có bảng HEAPKhôngKhôngKhôngKhôngKhông
Oraclechỉ có ở phiên bản EEBảng gộpKhôngKhông
PostgreSQLCó  10
Pyrrho DBMSKhôngKhôngKhôngKhôngKhôngKhôngKhông
SQLiteKhôngKhôngKhôngKhôngKhôngKhông
TeradataKhôngKhôngKhông
Cây R-/Cây R+Hàm bămBiểu thức (lập trình)Chỉ mục từng phầnChỉ mục đảoBitmapGiST

Note (8): Có thể thực hiện bằng chỉ mục của cột có thể tính toán hay khung nhìn đã được sắp xếp chỉ mục. [5]

Note (9): Có thể thực hiện bằng khung nhìn đã được sắp xếp chỉ mục. [6]

Note (10): Chức năng chỉ mục của PostgreSQL có thể sử dụng để đảo ngược thứ tự của các trường dữ liệu.

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

Thông tin về các đối tượng khác được hỗ trợ sẵn trong các hệ thống quản trị cơ sở dữ liệu quan hệ.

DomainCursorTriggerHàm 11Thủ tục 11External routine 11
Adaptive Server Enterprise
ADS
Apache DerbyKhôngCó  12Có  12Có  12
DB2Không
Firebird
HSQLDB?Không
H2?Không
Informix?
Ingres
InterBase
MaxDB?
Microsoft SQL ServerCó (2000 and beyond)
MySQLKhông
Oracle
PostgreSQL
Pyrrho DBMS
SQLiteKhôngKhôngKhôngKhông
TeradataKhông
DomainCursorTriggerHàmThủ tụcExternal routine

Ghi chú(11): Cả hàmthủ tục đều nói đến các chương trình nhỏ để xử lý dữ liệu (internal routines) được viết bằng ngôn ngữ SQL và/hoặc ngôn ngữ thủ tục như PL/SQL. External routine được viết bằng các ngông ngữ lập trình như C, Java, Cobol v.v... Thủ tục lưu trữ là từ để nói đến internal routines và external routine. Nhưng nó được định nghĩa rất khác nhau giữa các nhà cung cấp phần mềm.
Ghi chú (12): Trong Derby, mã của hàm và thủ tục được viết bằng ngôn ngữ Java.

AÁỨ

Xem thêm

  • Danh sách các hệ thống quản trị cơ sở dữ liệu quan hệ
  • So sánh các hệ thống quản trị cơ sở dữ liệu quan hệ thực
  • So sánh các hệ thống quản trị cơ sở dữ liệu hướng đối tượng quan hệ

Tham khảo

Liên kết ngoài