Revision as of 16:35, 30 August 2005 edit68.121.150.251 (talk) revising the data for ADS according to ants.com; please contribute if you have info← Previous edit | Revision as of 16:43, 30 August 2005 edit undoBogdangiusca (talk | contribs)39,816 editsm revNext edit → | ||
Line 21: | Line 21: | ||
| ] | | ] | ||
| 9.0.2 | | 9.0.2 | ||
| ] | |||
|- | |||
! style="text-align:left;" bgcolor="#ececec" | ] | |||
| ] | |||
| ] | |||
| 3.2 | |||
| ] | | ] | ||
|- | |- | ||
Line 128: | Line 122: | ||
| bgcolor="#ddffdd" | Yes | | bgcolor="#ddffdd" | Yes | ||
| bgcolor="#ddffdd" | Yes | | bgcolor="#ddffdd" | Yes | ||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
|- | |||
! style="text-align:left;" bgcolor="#ececec" | ] | |||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ffdddd" | No | |||
| bgcolor="#ddffdd" | Yes | | bgcolor="#ddffdd" | Yes | ||
| bgcolor="#ddffdd" | Yes | | bgcolor="#ddffdd" | Yes | ||
Line 250: | Line 237: | ||
|- | |- | ||
! style="text-align:left;" bgcolor="#ececec" | ] | ! style="text-align:left;" bgcolor="#ececec" | ] | ||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
|- | |||
! style="text-align:left;" bgcolor="#ececec" | ] | |||
| bgcolor="#ddffdd" | Yes | | bgcolor="#ddffdd" | Yes | ||
| bgcolor="#ddffdd" | Yes | | bgcolor="#ddffdd" | Yes | ||
Line 361: | Line 342: | ||
| bgcolor="#ddffdd" | Yes <sup id="fn_5_back">]</sup> | | bgcolor="#ddffdd" | Yes <sup id="fn_5_back">]</sup> | ||
| bgcolor="#ffdddd" | No | | bgcolor="#ffdddd" | No | ||
|- | |||
! style="text-align:left;" bgcolor="#ececec" | ] | |||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
|- | |- | ||
! style="text-align:left;" bgcolor="#ececec" | ] | ! style="text-align:left;" bgcolor="#ececec" | ] | ||
Line 452: | Line 429: | ||
| bgcolor="#ddffdd" | Yes | | bgcolor="#ddffdd" | Yes | ||
| bgcolor="#ffdddd" | No | | bgcolor="#ffdddd" | No | ||
|- | |||
! style="text-align:left;" bgcolor="#ececec" | ] | |||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
|- | |- | ||
! style="text-align:left;" bgcolor="#ececec" | ] | ! style="text-align:left;" bgcolor="#ececec" | ] | ||
Line 593: | Line 562: | ||
|- | |- | ||
! style="text-align:left;" bgcolor="#ececec" | ] | ! style="text-align:left;" bgcolor="#ececec" | ] | ||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
|- | |||
! style="text-align:left;" bgcolor="#ececec" | ] | |||
| bgcolor="#ddffdd" | Yes | | bgcolor="#ddffdd" | Yes | ||
| bgcolor="#ddffdd" | Yes | | bgcolor="#ddffdd" | Yes | ||
Line 740: | Line 701: | ||
| bgcolor="#ffdddd" | No | | bgcolor="#ffdddd" | No | ||
| bgcolor="#ffdddd" | No | | bgcolor="#ffdddd" | No | ||
|- | |||
! style="text-align:left;" bgcolor="#ececec" | ] | |||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
| bgcolor="#ddffdd" | Yes | |||
|- | |- | ||
! style="text-align:left;" bgcolor="#ececec" | ] | ! style="text-align:left;" bgcolor="#ececec" | ] |
Revision as of 16:43, 30 August 2005
The following tables compare general and technical information for a number of relational database management systems. Please see the individual products' articles for further information. This article is not all-inclusive or necessarily up-to-date. Unless otherwise specified in footnotes, comparisons are based on the stable versions without any add-ons, extensions or external programs.
General information
Basic general information about the RDBMSes: creator, company, license, etc.
Creator | First public release date | Latest stable version | Software license | |
---|---|---|---|---|
Adaptive Server Enterprise | Sybase | 1987 | 12.5.3 | Proprietary |
Adaptive Server Anywhere | Sybase/iAnywhere | 1992 | 9.0.2 | Proprietary |
DB2 | IBM | 1982 | 8.2 | Proprietary |
Firebird | Firebird Foundation | July 25, 2000 | 1.5.2 | InterBase Public License |
Informix | Informix Software | 1985 | 10.0 | Proprietary |
HSQLDB | Hsqldb.Org | 2001 | 1.8.0 | BSD-based |
Ingres | Berkeley University, Computer Associates | 1980 | r3 3.0.1 | CA-TOSL |
InterBase | Borland | 1985 | 7.5.1 | Proprietary |
SapDB | SAP AG | ? | 7.4 | GPL with LGPL drivers |
MaxDB | MySQL AB, SAP AG | ? | 7.5 | GPL or proprietary |
Microsoft SQL Server | Microsoft | 1989 | 8.00.2039 (2000 SP4) | Proprietary |
MySQL | MySQL AB | November 1996 | 4.1 | GPL or proprietary |
Oracle | Oracle Corporation | 1977 | 10g Release 2 | Proprietary |
PostgreSQL | PostgreSQL Global Development Group | June, 1989 | 8.0.3 | BSD license |
SQLite | D. Richard Hipp | August 17 2000 | 3.2.3 | Public domain |
Creator | First public release date | Latest stable version | Software license |
Operating system support
The operating systems the RDBMSes can run on.
Windows | Mac OS X | Linux | BSD | Unix | |
---|---|---|---|---|---|
Adaptive Server Enterprise | Yes | Yes | Yes | Yes | Yes |
DB2 | Yes | No | Yes | No | Yes |
Firebird | Yes | Yes | Yes | Yes | Yes |
HSQLDB | Yes | Yes | Yes | Yes | Yes |
Informix | Yes | Yes | Yes | Yes | Yes |
Ingres | Yes | ? | Yes | ? | Yes |
InterBase | Yes | No | Yes | No | Yes (Solaris) |
SapDB | Yes | No | Yes | No | Yes |
MaxDB | Yes | No | Yes | No | Yes |
Microsoft SQL Server | Yes | No | No | No | No |
MySQL | Yes | Yes | Yes | Yes | Yes |
Oracle | Yes | Yes | Yes | No | Yes |
PostgreSQL | Yes | Yes | Yes | Yes | Yes |
SQLite | Yes | Yes | Yes | Yes | Yes |
Windows | Mac OS X | Linux | BSD | Unix |
Fundamental features
Information about what fundamental RDBMS features are implemented natively.
ACID | Referential integrity | Transactions | Unicode | |
---|---|---|---|---|
Adaptive Server Enterprise | Yes | Yes | Yes | Yes |
DB2 | Yes | Yes | Yes | Yes |
Firebird | Yes | Yes | Yes | Yes |
HSQLDB | Yes | Yes | Yes | ? |
Informix | Yes | Yes | Yes | Yes |
Ingres | Yes | Yes | Yes | Yes |
InterBase | Yes | Yes | Yes | Yes |
SapDB | Yes | Yes | Yes | Yes |
MaxDB | Yes | Yes | Yes | Yes |
Microsoft SQL Server | Yes | Yes | Yes | Yes |
MySQL | Depends | Depends | Depends | Yes |
Oracle | Yes | Yes | Yes | Yes |
PostgreSQL | Yes | Yes | Yes | Yes |
SQLite | Yes | No | Basic | Yes |
ACID | Referential integrity | Transactions | Unicode |
Note (1): For transactions and referential integrity, the InnoDB table type must be used; the default table type, MyISAM, does not support these features. However, even the InnoDB table type permits storage of values that exceed the data range; some view this as violating the Integrity constraint of ACID.
Note (2): CHECK and FOREIGN KEY constraints are parsed but are not enforced. Nested transactions are not supported.
Tables and views
Information about what tables and views (other than basic ones) are supported natively.
Temporary table | Materialized view | |
---|---|---|
Adaptive Server Enterprise | Yes | No |
DB2 | Yes | Yes |
Firebird | No | No |
HSQLDB | Yes | No |
Informix | Yes | Yes |
Ingres | Yes | No |
InterBase | Yes | No |
SapDB | Yes | No |
MaxDB | Yes | No |
Microsoft SQL Server | Yes | Similar |
MySQL | Yes | No |
Oracle | Yes | Yes |
PostgreSQL | Yes | No |
SQLite | Yes | No |
Temporary table | Materialized view |
Note (4): Materialized view can be emulated with PL/pgSQL, PL/Perl, PL/Python or other procedural languages. One example is here: .
Note (5): Server provides tempdb, which can be used for public and private (for the session) temp tables.
Note (6): MS SQL server provides indexed views.
Indexes
Information about what indexes (other than basic B-/B+ tree indexes) are supported natively.
R-/R+ tree | Hash | Expression | Partial | Reverse | Bitmap | |
---|---|---|---|---|---|---|
Adaptive Server Enterprise | No | No | No | No | Yes | No |
DB2 | No | ? | No | No | Yes | Yes |
Firebird | No | No | No | No | No | No |
HSQLDB | No | No | No | No | No | No |
Informix | Yes | Yes | Yes | No | No | No |
Ingres | Yes | Yes | No | No | No | No |
InterBase | ? | ? | No | No | No | No |
SapDB | ? | ? | No | No | No | No |
MaxDB | ? | ? | No | No | No | No |
Microsoft SQL Server | ? | ? | No | No | No | No |
MySQL | MyISAM tables only | HEAP tables only | No | No | No | No |
Oracle | EE edition only | Cluster Tables | Yes | No | Yes | Yes |
PostgreSQL | Yes | Yes | Yes | Yes | Yes | Yes |
SQLite | No | No | No | No | No | No |
R-/R+ tree | Hash | Expression | Partial | Reverse | Bitmap |
Note (7): A PostgreSQL functional index can be used to reverse the order of a field.
Note (8): Bitmap indexes are supported as of PostgreSQL 8.1, presently in beta
Other objects
Information about what other objects are supported natively.
Domain | Cursor | Trigger | Function | Procedure | External routine | |
---|---|---|---|---|---|---|
Adaptive Server Enterprise | Yes | Yes | Yes | Yes | Yes | Yes |
DB2 | No | Yes | Yes | Yes | Yes | Yes |
Firebird | Yes | Yes | Yes | Yes | Yes | Yes |
HSQLDB | ? | No | Yes | Yes | Yes | Yes |
Informix | ? | Yes | Yes | Yes | Yes | Yes |
Ingres | Yes | Yes | Yes | Yes | Yes | ? |
InterBase | Yes | Yes | Yes | Yes | Yes | Yes |
SapDB | Yes | Yes | Yes | Yes | Yes | ? |
MaxDB | Yes | Yes | Yes | Yes | Yes | ? |
Microsoft SQL Server | No | Yes | Yes | Yes | Yes | Yes |
MySQL | No | No | No | No | No | Yes |
Oracle | Yes | Yes | Yes | Yes | Yes | Yes |
PostgreSQL | Yes | Yes | Yes | Yes | Yes | Yes |
SQLite | No | No | Yes | No | No | Yes |
Domain | Cursor | Trigger | Function | Procedure | External routine |
Note (3): These database objects are available in MySQL 5.0 only, which is an experimental version.
Note (5): Both function and procedure refer to internal routines written in SQL and/or procedural language like PL/SQL. External routine refers to the one written in the host languages, such as C, Java, Cobol, etc. "Stored procedure" is a commonly used term for these routine types. However, its definition varies between different database vendors.
Partitioning
Information about what partitioning methods are supported natively.
Range | Hash | Composite (Range+Hash) | List | |
---|---|---|---|---|
Adaptive Server Enterprise | No | Yes | No | No |
DB2 | Yes | Yes | Yes | Yes |
Firebird | No | No | No | No |
Informix | ? | ? | ? | ? |
Ingres | Yes | Yes | Yes | Yes |
InterBase | No | No | No | No |
SapDB | ? | ? | ? | ? |
MaxDB | ? | ? | ? | ? |
Microsoft SQL Server | Yes | No | No | No |
MySQL | No | No | No | No |
Oracle | Yes | Yes | Yes | Yes |
PostgreSQL | No | No | No | No |
SQLite | No | No | No | No |
Range | Hash | Composite (Range+Hash) | List |
See also
External links
- Comparison of different SQL implementations
- Comparison of geometrical data handling in PostgreSQL, MySQL and DB2
- Open Source Database Software Comparison
- PostgreSQL vs. MySQL vs. Commercial Databases: It's All About What You Need