Comparison of relational database management systems: Difference between revisions

Content deleted Content added
make "Embarcadero Technologies" link to them and not their database
tag dead or usurped links | Cleaned up using AutoEd
Line 5:
{| class="wikitable sortable"
|-
!
! Maintainer
! First public release date
Line 65:
| {{Yes}}<ref>[https://issues.apache.org/jira/projects/DERBY Derby - ASF JIRA]</ref>
|-
! [[Clustrix|ClustrixDB]]DB
| [[MariaDB|MariaDB Corporation]]
| 2010
Line 79:
| 2021-04-23
| {{free|BSL,CCL,MIT,BSD}}
| {{Yes}}<ref>[https://github.com/cockroachdb/cockroach/issues cockroachdb Issue tracker]{{dead link|date=July 2024}}</ref>
|-
! [[CUBRID]]
Line 166:
| publisher = Firebird SQL
}}</ref>}}
| {{Yes}}<ref>[http://tracker.firebirdsql.org/ Firebird RDBMS Issue Tracker]{{dead link|date=July 2024}}</ref>
|-
! [[GPUdb]]
Line 225:
| 2018-02-15
| {{Proprietary}}
| {{Yes}}<ref>[https://www.linter.ru/ru/support/technical-support/ Linter Techsupport]{{dead link|date=July 2024}}</ref>
|-
! [[LucidDB]]
Line 239:
| 2010-02-01
| {{wikidata|property|reference|edit|Q787177|P348|P548=Q2804309}}
| {{wikidata|qualifier|raw|Q787177|P348|P577|P548=Q2804309}}; {{Time ago|{{wikidata|qualifier|raw|Q787177|P348|P577|P548=Q2804309}}}}
| {{free|[[GNU General Public License|GPL]] v2, [[GNU Lesser General Public License|LGPL]] (for client-libraries)<ref name="MariaDB licenses">{{cite web
| url = https://mariadb.com/kb/en/mariadb-license/
Line 313:
| date = 8 February 2022
}}</ref>}}
| {{Yes}}<ref>[https://github.com/MonetDB/MonetDB/issues MonetDB Issues]{{dead link|date=July 2024}}</ref>
|-
! [[mSQL]]
Line 387:
| 2018-08-15
| {{partial|[[GNU General Public License|GPL]] v2 or [[Proprietary software|Proprietary]]}}
| {{Yes}}<ref>[https://github.com/openlink/virtuoso-opensource/issues Issues · openlink/virtuoso-opensource · GitHub]{{dead link|date=July 2024}}</ref>
|-
! [[Oracle Database|Oracle DB]]
Line 565:
| {{Yes}}<ref>{{Cite web|url=https://github.com/YugaByte/yugabyte-db/issues|title=Issues · yugabyte/Yugabyte-db|website=[[GitHub]]}}</ref>
|-
!
! Maintainer
! First public release date
Line 578:
{| class="wikitable sortable"
|-
!
! [[Microsoft Windows|Windows]]
! [[macOS]]
Line 662:
| {{no}}
|-
! [[Clustrix|ClustrixDB]]DB
| {{no}}
| {{no}}
Line 1,049:
| {{yes}}
| {{yes}}
| {{yes}} ([[MorphOS]])<ref>{{Cite web|url=http://aminet.net/package/dev/gg/postgresql632-mos-bin|title=Aminet - dev/Gg/Postgresql632-mos-bin.lha}}{{dead link|date=July 2024}}</ref>
| Under [[Linux on IBM Z]]<ref>{{Cite web |url=http://www.oss4zos.org/mediawiki/index.php?title=PostgreSQL#z.2FOS |title=PostgreSQL - Oss4zos |access-date=2013-08-15 |archive-url=https://web.archive.org/web/20150527204912/http://www.oss4zos.org/mediawiki/index.php?title=PostgreSQL#z.2FOS |archive-date=2015-05-27 |url-status=dead }}</ref>
| {{no}}
Line 1,223:
| {{no}}
|-
!
! [[Microsoft Windows|Windows]]
! [[macOS]]
Line 1,311:
| {{Yes}}
|-
! [[Clustrix|ClustrixDB]]DB
| {{yes}}
| {{yes}}
Line 1,345:
| {{yes}}
| {{yes}}
| {{yes}} (Row-level locking)<ref>[http://www-01.ibm.com/support/knowledgecenter/SSEPGG_9.7.0/com.ibm.db2.luw.admin.perf.doc/doc/c0004121.html DB2 for Linux UNIX and Windows 9.7.0>Fundamentos de DB2>Performance tuning>Factors affecting performance>Application design>Concurrency issues>Isolation levels]{{dead link|date=July 2024}}</ref>
| {{dunno}}
| {{yes}}
Line 1,535:
| {{yes}}<sup id="feat_3_back">[[#feat 3|3]]</sup>
| {{yes}}<sup>[[#feat 2|2]]</sup> except for [[Data Definition Language|DDL]]<ref name="Transactional DDL in PostgreSQL"/>
| {{yes}} (Row-level locking)<ref>[https://dev.mysql.com/doc/refman/5.6/en/internal-locking.html MySQL :: MySQL 5.6 Reference Manual :: 8.10.1 Internal Locking Methods]{{dead link|date=July 2024}}</ref>
| {{yes}}
| {{yes}}
Line 1,605:
| {{yes}}
| {{yes}}
| {{yes}} (Row-level locking)<ref>[https://www.postgresql.org/docs/current/explicit-locking.html#LOCKING_ROWS PostgreSQL: Documentation: Explicit Locking : Row-Level Locks]{{dead link|date=July 2024}}</ref>
| {{yes}}
| {{yes}}
| [[API]] & [[graphical user interface|GUI]] & [[SQL]]
Line 1,635:
| {{yes}}
| {{yes}}
| {{yes}} (Row-level locking)<ref>[https://help.sap.com/viewer/e38b2f6217f24bdb90a3ff8ae57b1dd5/17.0/en-US/3bee03b56c5f1014ab68e3eff32515dd.html | SAP SQL Anywhere Reference - Types of Lock]</ref>
| {{yes}}<ref>[https://help.sap.com/viewer/e38b2f6217f24bdb90a3ff8ae57b1dd5/17.0/en-US/3bf0656e6c5f1014bb32fe2f7ce00302.html SAP SQL Anywhere Reference - Snapshot Isolation]{{dead link|date=July 2024}}</ref>
| {{yes}}
| [[API]] & [[graphical user interface|GUI]] & [[HTTP|HTTP(S)]] (REST & SOAP)<ref>https://help.sap.com/viewer/98ad9ec940e2465695685d98e308dff5/17.0/en-US/3bd460b56c5f10148922c11d39abc0b3.html | SAP SQL Anywhere Reference - HTTP Web Services</ref> & [[SQL]]
Line 1,721:
![[Type inference]]
|}
 
* <cite id="feat_1">[[Comparison of relational database management systems#feat 1|Note (1):]]</cite> Currently only supports read uncommitted transaction isolation. Version 1.9 adds serializable isolation and version 2.0 will be fully ACID compliant.
* <cite id="feat_2">[[#feat 2 back|Note (2):]]</cite> MariaDB and MySQL provide ACID compliance through the default InnoDB storage engine.<ref>{{cite web
Line 1,790 ⟶ 1,789:
| 128
|-
! style="text-align:left" | [[Clustrix|ClustrixDB]]DB
| Unlimited
| Unlimited
Line 1,828 ⟶ 1,827:
! style="text-align:left" | [[Empress database|Empress Embedded Database]]
| Unlimited
| 2<sup>63</sup>&minus;1−1 bytes
| 2 GB
| 32,767
Line 1,949 ⟶ 1,948:
| Unlimited
| 2<sup>30</sup> rows
| 64 KB (w/o BLOBs),<br />2GB (each BLOB value)
| 250
| 2 GB
Line 1,960 ⟶ 1,959:
! style="text-align:left" | [[MariaDB]]
| Unlimited
| MyISAM storage limits: 256 TB;<br />Innodb storage limits: 64 TB;<br />Aria storage limits: ???
| 64 KB<sup id="limit_3_back">[[#limit 3|3]]</sup>
| 4,096<sup id="limit_4_back">[[#limit 4|4]]</sup>
Line 1,980 ⟶ 1,979:
| 16 MB
| 255
| 64 KB (memo field),<br />1 GB ("OLE Object" field)
| 255 B (text field)
| 32 bits
Line 2,061 ⟶ 2,060:
|-
! style="text-align:left" | [[Virtuoso Universal Server|OpenLink Virtuoso]]
| 32 TB per instance<br />(Unlimited via elastic cluster)
| DB size (or 32 TB)
| 4 KB
Line 2,073 ⟶ 2,072:
|-
! style="text-align:left" | [[Oracle Database|Oracle]]
| {{val|2|u=PB}} (with standard 8k block)<br />{{val|8|u=PB}} (with max 32k block)<br />{{val|8|u=EB}} (with max 32k block and BIGFILE option)
| 4 GB × block size<br />(with BIGFILE tablespace)
| 8 KB
| 1,000
Line 2,170 ⟶ 2,169:
| 254
|-
! style="text-align:left" | [[SQL Anywhere]]<ref>[https://help.sap.com/viewer/61ecb3d4d8be4baaa07cc4db0ddb5d0a/17.0/en-US/813836f16ce210149e89f219dc353b7e.html | SAP SQL Anywhere - Physical limitations on size and number of databases]</ref>
| 104 TB (13 files, each file up to 8 TB (32 KB pages))
| Limited by file size
Line 2,197 ⟶ 2,196:
| Unlimited
| Unlimited
| 64000 wo/lobs<br />(64 GB w/lobs)
| 2,048
| 2 GB
Line 2,230 ⟶ 2,229:
! Max column name size
|}
 
* <cite id="limit_1">[[#limit 1 back|Note (1):]]</cite> Firebird 2.x maximum database size is effectively unlimited with the largest known database size >980 GB.<ref>
{{Citation
Line 2,311 ⟶ 2,309:
| {{no}}
|-
! style="text-align:left" | [[Clustrix|ClustrixDB]]DB
| {{yes}}
| {{no}}
Line 2,581 ⟶ 2,579:
| {{no}}
|-
! style="text-align:left" | [[Clustrix|ClustrixDB]]DB
| {{no}}
| {{yes}}
Line 3,406 ⟶ 3,404:
 
|-
! style="text-align:left" | [[Clustrix|ClustrixDB]]DB
| {{yes}}
| {{no}}
Line 3,542 ⟶ 3,540:
| {{yes}}
| {{yes}}
| {{yes}}<ref>[http://portal.acm.org/citation.cfm?id=382443 Informix parallel data query (PDQ)]{{dead link|date=July 2024}}</ref>
| {{dunno}}
 
Line 3,682 ⟶ 3,680:
! style="text-align:left" | [[Microsoft SQL Server]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
Line 4,039 ⟶ 4,037:
| {{mono|BLOB}}, {{mono|BYTE}}, {{mono|NIBBLE}}, {{mono|BIT}}, {{mono|VARBIT}}
| {{mono|DATE}}
|
| {{mono|GEOMETRY}}
|-
! style="text-align:left" | [[Clustrix|ClustrixDB]]DB<ref name="mysql-datatypes"/>
| Static
| {{mono|TINYINT}} (8-bit), {{mono|SMALLINT}} (16-bit), {{mono|MEDIUMINT}} (24-bit), {{mono|INT}} (32-bit), {{mono|BIGINT}} (64-bit)
Line 4,420 ⟶ 4,418:
| {{mono|BINARY}}, {{mono|VARBINARY}}, {{mono|LONG}} {{mono|VARBINARY}}
| {{mono|DATE}}, {{mono|TIME}}, {{mono|TIMESTAMP}}
|
|
|-
! style="text-align:left" | [[SQLite]]<ref name="sqlite-datatypes">{{Citation
Line 4,472 ⟶ 4,470:
| {{mono|BYTE}}, {{mono|VARBYTE}}, {{mono|BLOB}}
| {{mono|DATE}}, {{mono|TIME}}, {{mono|TIMESTAMP}} (w/wo {{mono|TIME}} {{mono|ZONE}})
|
| {{mono|PERIOD}}, {{mono|INTERVAL}}, {{mono|GEOMETRY}}, {{mono|XML}}, {{mono|JSON}}, {{mono|UDT}} (User Defined Type)
|-
Line 4,569 ⟶ 4,567:
| {{yes}}&nbsp;<sup>[[#other 2|2]]</sup>
|-
! style="text-align:left" | [[Clustrix|ClustrixDB]]DB
| {{no}}
| {{yes}}
Line 4,706 ⟶ 4,704:
|-
! style="text-align:left" | [[Microsoft SQL Server]]
| {{yes}}
| {{yes}}
| {{yes}}
Line 4,926 ⟶ 4,924:
| {{dunno}}
|-
! style="text-align:left" | [[Clustrix|ClustrixDB]]DB
| {{yes}}
| {{no}}
Line 5,576 ⟶ 5,574:
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
Line 5,710 ⟶ 5,708:
 
Both a schema and a database can be used to isolate one table, "foo", from another like-named table "foo". The following is pseudo code:
 
* {{code|SELECT * FROM database1.foo|sql}} vs. {{code|SELECT * FROM database2.foo|sql}} (no explicit schema between database and table)
* {{code|SELECT * FROM [database1.]default.foo|sql}} vs. {{code|SELECT * FROM [database1.]alternate.foo|sql}} (no explicit database prefix)