Сравнение систем управления реляционными базами данных

редактировать
Статья списка Викимедиа

В следующих таблицах сравнивается общая и техническая информация для ряда системы управления реляционными базами данных. Пожалуйста, смотрите статьи по отдельным продуктам для получения дополнительной информации. Если иное не указано в сносках, сравнения основаны на стабильных версиях без каких-либо надстроек, расширений или внешних программ.

Содержание
  • 1 Общая информация
  • 2 Поддержка операционной системы
  • 3 Основные функции
  • 4 Ограничения
  • 5 Таблицы и представления
  • 6 Индексы
  • 7 Возможности базы данных
  • 8 Типы данных
  • 9 Другие объекты
  • 10 Разделение
  • 11 Контроль доступа
  • 12 Базы данных и схемы (терминология)
  • 13 См. Также
  • 14 Ссылки
  • 15 Внешние ссылки
Общие информация
СопровождающийДата первого общедоступного выпускаПоследняя стабильная версияДата последнего выпускаЛицензияСписок общедоступных выпусков
4D (4-е измерение) 4D SAS1984v16.02017-01-10Собственный
ADABAS Software AG 19708.12013-06Собственный Нет
Adaptive Server Enterprise SAP AG 198716.0 SP03 PL072019-06-10Собственный Нет
Сервер базы данных Advantage (ADS) SAP AG 199212.02015Собственная Нет
Altibase Altibase Corp.20007.1.0.1.202.03.2018GNU-AGPLv3; GNU-LGPLv3 (для клиентских библиотек)Нет
Apache Derby Apache 200410.15.1.32019-03-11Лицензия Apache Да
ClustrixDB MariaDB Corporation 2010v7.02015-08-19Собственный Нет
CUBRID CUBRID2008-1110.2.12020-06-01GPL v2 или новее, лицензия BSD для API и инструменты с графическим интерфейсомДа
Datacom CA, Inc. Начало 70-х142012Собственный Нет
Db2 IBM 198311.52019-06-27 Собственная Нет
Встроенная база данных Empress Empress Software Inc197910.202010-03Собственность
EXASolution EXASOL AG 20046.0.02017- 03-17Собственность Нет
FileMaker FileMaker, Inc., дочерняя компания Apple1985-04182019- 05-22Собственный Нет
Firebird Проект Firebird2000-07-253.0.72020-10- 20 IPL и IDPLДа
GPUdb 20143.2.52015-01-14Собственный Нет
HSQLDB Группа разработки HSQL20012.4.12018-05-20BSD Да
H2 H2 Software20051.4.2002019-10-14EPL и модифицированный MPL Да
Informix Dynamic Server IBM 1981 ???? 198014.10.xC4W12020-06-22Собственный
Ingres Ingres Corp. 197411.02017-03-21GPL и Собственные Нет
InterBase Embarcadero 1984XE7 v12.0.4.3572015-08-12Собственная Нет
СУБД ЛИНТЕР SQL Группа РЕЛЭКС19906.0.17.5315.02.2018Собственный Да
LucidDB Проект Eigenbase2007-010.9.42012-01-05GPL v2Нет
MariaDB Сообщество MariaDB 2010-02-0110.5.72020-11-04 GPL v2, LGPL (для клиентских библиотек)Да
MaxDB SAP AG 2003-057.9.0.82014Собственный Да
SingleStore (ранее MemSQL) SingleStore 2012-067.1.112020-10-12Собственный Нет
Microsoft Access (JET)Microsoft 199216 (2016)2015-09-22Собственный Нет
Microsoft Visual Foxpro Microsoft 19849 (2005)2007-10-11Собственный Нет
Microsoft SQL Server Microsoft 1989SQL Server 20192019-11-04 Собственный Нет
Microsoft SQL Server Compact (встроенная база данных) Microsoft 20002011 (v4.0)Собственный Нет
Mimer SQL Mimer Information Technology197810.1.6A2020-07-31Собственный Нет
MonetDB Команда MonetDB Team / CWI 2004октябрь20202020-10-19Общественная лицензия Mozilla, версия 2. 0Да
mSQL Hughes Technologies19944.12017-06-30Собственный Нет
MySQL Oracle Corporation 1995-118.0.222020-10-19 GPL v2 или Собственный Да
NexusDB NexusDB Pty Ltd20034.00.142015-06-25Собственный Нет
HP NonStop SQL Hewlett-Packard 1987SQL / MX 3.4Собственный Нет
NuoDB NuoDB 20134.1Август 2020 г.Запатентованная
Omnis Studio TigerLogic Inc1982-076.1.3 Выпуск 1no2015-12Собственный Нет
OpenEdge Progress Software Corporation 198411.6.32016-08-19Собственное Нет
OpenLink Virtuoso Программное обеспечение OpenLink19987.2.5.12018-08-15GPL v2 или Собственный Да
Oracle DB Oracle Corporation 1979-1119c2019-02-13 Собственный etary Нет
Oracle Rdb Oracle Corporation 19847.4.1.02020-08-10 Собственный Нет
Paradox Corel Corporation1985112007-09-07Собственный Нет
Percona Server для MySQLPercona 20068.0.21-122020-10-13 GPL v2Да
Pervasive PSQL Распространенное программное обеспечение 1982v122015Собственное ПО Нет
СУБД Polyhedra ENEA AB 19939.02015-06-24Собственный, Polyhedra Lite доступен как Бесплатное Нет
PostgreSQL Глобальная группа разработчиков PostgreSQL1989-0613.02020-09-24Лицензия PostgreSQL (либеральная лицензия с открытым исходным кодом)No
R: Base R: BASE Technologies198210.02016-05-26Собственный Нет
Raima Database Manager Raima Inc.198414.22020-10-08Собственный Нет
RDM Сервер Raima Inc.19938.431.10.2012Собственный
SAP HANA SAP AG 20102.0 SPS042019-08-08Собственный Нет
solidDB UNICOM Global 19927.0.0.102014-04-29Собственный Нет
SQL Anywhere SAP AG 199217.0.0.4826.07.2019Собственный Нет
SQLBase Unify Corp.198211,52008-11Собственный Нет
SQLite D. Ричард Хипп 2000-09-123.30.12019-10-11Общественное достояние Да
SQream DB SQream Technologies20142.12018-01-15Собственный Нет
Superbase Superbase 1984Scientific (2004)Собственный Нет
Teradata Teradata 1984152014-04Собственный Нет
Tibero TmaxSoft 199262015-04Собственный Нет
TiDB Apache 20163.0.02019-06-28Лицензия Apache Да
UniData Rocket Software19888.2.107.07.2017Собственный Нет
YugabyteDB Apache 20182.2.302020-09-30 Лицензия Apache Да
СопровождающийДата первого общедоступного выпускаПоследняя стабильная версияДата последнего выпускаЛицензияСписок общедоступных выпусков
Эксплуатация поддержка системы

операционные системы, на которых могут работать СУБД.

Windows macOS Linux BSD UNIX AmigaOS z / OS iOS Android OpenVMS
4-е измерение ДаДаНетНетНетНетНетНетНетНет
ADABAS ДаНетДаНетДаНетДаНетНетНет
Adaptive Server Enterprise ДаНетДаДаДаНетНетНетНетНет
Сервер базы данных Advantage ДаНетДаНетНетНетНетНетНетНет
Altibase ДаНетДаНетДаНетНетНетНетНет
Apache Derby ДаДаДаДаДаНетДа?НетНет
ClustrixDB НетНетДаНетДаНетНетНетНетНет
CUBRID ДаЧастичноДаНетНетНетНетНетНетНет
DB2 ДаДа (Express C )ДаНетДаНетДаДаНетНет
Встроенная база данных Empress ДаДаДаДаДаНетНетНетДаНет
EXASolution НетНетДаНетНетНетНетНетНетНет
FileMaker ДаДаДаНетНетНетНетДаНетНет
Firebird ДаДаДаДаДаНетМожет бытьНетДаНет
HSQLDB ДаДаДаДаДаНетДа??Нет
H2 ДаДаДаДаДаНетДа?ДаНет
Informix Dynamic Server ДаДаДаДаДаНетНетНетНетНет
Ingres ДаДаДаДаДаНетЧастичноНетНетДа
InterBase ДаДаДаНетДа (Solaris )НетНетДаДаНет
СУБД Linter SQL ДаДаДаДаДаНетВ Linux на IBM Z ДаДаДа
LucidDB ДаДаДаНетНетНетНетНетНетНет
Ма riaDB ДаДаДаДаДаНетНет?ДаНет
MaxDB ДаНетДаНетДаНетВозможноНетНетНет
Microsoft Access (JET)ДаНетНетНетНетНетНетНетНетНет
Microsoft Visual Foxpro ДаНетНетНетНетНетНетНетНетНет
Microsoft SQL Server ДаНетДаНетНетНетНетНетНетНет
Microsoft SQL Server Compact (встроенная база данных) ДаНетНетНетНетНетНетНетНетНет
Mimer SQL ДаДаДаНетДаНетНетНетДаДа
MonetDB ДаДаДаДаДаНетНетНетНетНет
MySQL ДаДаДаДаДаДаДа?ДаНет
Omnis Studio ДаДаДаНетНетНетНетНетНетНет
OpenEdge ДаНетДаНетДаНетНетНетНетНет
OpenLink Virtuoso ДаДаДаДаДаНетНетНетНетНет
Oracle ДаДаДаНетДаНетДаНетНетДа
Oracle Rdb НетНетНетНетНетНетНетНетНетДа
Pervasive PSQL ДаДа (только OEM)ДаНетНетНетНетНетНетНет
Многогранники ДаНетДаНетДаНетНетНетНетНет
PostgreSQL ДаДаДаДаДаДа (MorphOS )Под Linux на IBM Z НетДаНет
R: Base ДаНетНетНетНетНетНетНетНетНет
Raima Database Manager ДаДаДаДаДаНетНетДаДаНет
Сервер RDM ДаДаДаДаДаНетНетНетНетНет
SAP HANA ДаНетДаНетНетНетНетНетНетНет
solidDB ДаНетДаНетДаНетМенее Linux на IBM Z НетНетНет
SQL Anywhere ДаДаДаНетДаНетНетНетДаНет
SQLBase ДаНетДаНетНетНетНетНетНетНет
SQLite ДаДаДаДаДаДаВозможноДаДаНет
SQream DB НетНетДаНетНетНетНетНетНетНет
Superbase ДаНетНетНетНетДаНетНетНетНет
Teradata ДаНетДаНетДаНетНетНетНетНет
Тиберо ДаНетДаНетДаНетНетНетНетНет
UniData ДаНетДаНетДаНетНетНетНетНет
UniVerse ДаНетДаНетДаНетНетНетНетНет
YugabyteDB ДаДаДаНетНетНетНетНетНетНет
Windows macOS Linux BSD UNIX AmigaOS z / OS iOS Android OpenVMS
Основные функции

Информация о том, какие фундаментальные функции СУБД реализованы изначально.

Имя базы данныхACID Ссылочная целостность Транзакции Детализированная блокировка Многовариантное управление параллелизмом Unicode ИнтерфейсВывод типа
4-е измерение ДаДаДа??ДаGUI SQL Да
ADABAS ДаНетДа??Дапроприетарный прямой вызов и SQL (через стороннюю организацию)Да
Adaptive Server Enterprise ДаДаДаДа (блокировка на уровне строк)ДаДаAPI GUI SQL Да
Сервер базы данных Advantage ДаДаДаДа (блокировка на уровне строки)?ДаAPI SQL Да
Altibase ДаДаДаДа (Блокировка на уровне строк)?ДаAPI GUI SQL Да
Apache Derby ДаДаДаДа (блокировка на уровне строк)?ДаSQL Да
ClustrixDB ДаДаДаДаДаДаSQL Да
CUBRID ДаДаДаДа (блокировка на уровне строк)?ДаGUI SQL Да
DB2 ДаДаДаДа (блокировка на уровне строк)?ДаGUI SQL Да
Встроенная база данных Empress ДаДаДа??ДаAPI SQL Да
EXASolution ДаДаДа??ДаAPI GUI SQL Да
Firebird ДаДаДа?ДаДаAPI SQL Да
HSQLDB ДаДаДа?ДаДаSQL Да
H2 ДаДаДа?ДаДаSQL Да
Informix Dynamic Server ДаДаДаДа (блокировка на уровне строк)ДаДаSQL, REST и JSON Да
Ingres ДаДаДаДа (блокировка на уровне строк)ДаДаSQL QUEL Да
InterBase ДаДаДа??ДаSQL Да
СУБД Linter SQL ДаДаДа (кроме DDL )Да (блокировка на уровне строк)?ДаAPI GUI SQL Да
LucidDB ДаНетНет??ДаSQL Да
MariaDB ДаДаДа, кроме DDL Да (блокировка на уровне строк)ДаДаSQL Да
MaxDB ДаДаДа??ДаSQL Да
Microsoft Access ( JET)ДаДаДа??ДаGUI и SQL Да
Microsoft Visual FoxPro ДаДаДаДа (блокировка на уровне строк SMB2)ДаНетGUI SQL Да
Microsoft SQL Server ДаДаДаДа (блокировка на уровне строк)ДаДаGUI SQL Да
Microsoft SQL Server Compact (встроенная база данных) ДаДа Да??ДаGUI SQL Да
Mimer SQL ДаДаДаДа (Оптимистическая блокировка )ДаДаAPI GUI SQL Да
MonetDB ДаДаДа??ДаAPI и SQL MALДа
MySQL ДаДаДа, кроме DDL Да (блокировка на уровне строк)ДаДаGUI SQL Да
OpenEdge ДаДаДаДа (блокировка на уровне строк)?ДаGUI SQL Да
OpenLink Virtuoso ДаДаДа??ДаAPI GUI SQL Да
Oracle ДаДаДа, кроме DDL Да (блокировка на уровне строк)ДаДаAPI и GUI SQL Да
Oracle Rdb ДаДаДа??ДаSQL Да
Pervasive PSQL ДаДаДа??ДаAPI и GUI SQL Да
Многогранная СУБД ДаДаДаДа (оптимистическая и пессимистическая блокировка на уровне ячеек)?ДаAPI SQL Да
PostgreSQL ДаДаДаДа (строка- блокировка уровня)ДаДаAPI и GUI SQL No
Raima Database Manager ДаДаДа?ДаДаSQL и API Да
Сервер RDM ДаДаДа??ДаSQL API Да
SAP HANA ДаДаДаДа (блокировка на уровне строк)ДаДаAPI и GUI и SQL Да
solidDB ДаДаДаДа (блокировка на уровне строк)?Да sAPI SQL Да
SQL Anywhere ДаДаДаДа (строкиа- блокировки уро вня)ДаДаAPI и GUI HTTP (S) (REST SOAP) SQL Да
SQLBase ДаДаДа??ДаAPI GUI SQL Да
SQLite ДаДаДаНет (блокировка на уровне базы данных)НетНеобязательноAPI SQL Да
Teradata ДаДаДаДа (хэш и раздел)?ДаSQL Да
Tibero ДаДаДаДа (строки- блокировка уровня)ДаДаAPI и GUI SQL Да
UniData ДаНетДа??ДаНесколькоДа
UniVerse ДаНетДа??ДаНесколькоДа
Имя базы данныхACID Ссылочная целостность Транзакции Детализированная блокировка Многовариантное управление параллелизмом Unicode ИнтерфейсОпределение типа

Примечание (1): В настоящее время поддерживается изоляция только незавершенных транзакций чтения. Версия 1.9 сериализуемую изоляцию, версия 2.0 будет полностью совместима с КИСЛОТОЙ.

Примечание (2): MySQL обеспечивает соответствие ACID через механизм хранения InnoDB по умолчанию.

Примечание (3): «Для отличных от InnoDB механизмов хранения, MySQL Server анализирует и игнорирует синтаксис FOREIGN KEY и ССЫЛКИ в операторах CREATE TABLE. Предложение CHECK анализируется, но игнорируется механизмом хранения. "

Примечание (4): Поддержка Unicode есть новое в версии 10.0.

Примечание (5): MySQL предоставляет графический интерфейс через MySQL Workbench.

Примечание (6): механизм MariaDB по умолчанию XtraDB - ACID совместимый.

Примечание (7): Ядро базы данных OpenEdge SQL использует ссылочную целостность, ядро Базы данных OpenEdge ABL - нет и обрабатывается через триггеры базы данных.

Ограничения

Информация об ограничениях на размер данных.

Максимальный размер DBМаксимальный размер таблицыМаксимальный размер строкиМаксимальный размер столбцов в строкеМаксимальный размер Blob / ClobМакс. Размер CHARМакс. ЧИСЛАМин. Значение ДАТЫМакс. Значение ДАТЫМакс. Размер имени столбца
4-е измерение Ограничено??65,135200 ГБ (2 GiB Unicode )200 ГБ (2 GiB Unicode )64 бит???
Сервер базы данных Преимущество Без ограничений16 EiB 65,530 Б65,135 / (10+ AvgFieldNameLength)4 ГиБ ?64 бита??128
Apache Derby Без ограниченийБез ограниченийБез ограничений1012 (5000 просмотров)2147483 647 символов254 (VARCHAR: 32,672)64 бита0001-01-019999-12-31128
ClustrixDB Без ограниченийБез ограничений64 МБ на устройстве, 4 МБ на AWS?64 МБ64 МБ64 МБ0001-01-019999-12-31254
CUBRID 2 EB2 EBБез ограниченийБез ограниченийБез ограничений1 ГБ64 бита0001-01-019999-12-31254
DB2 Без ограничений2 ZB 1,048,319 Б1,0122 ГБ32 KiB 64 бита0001-01-019999-12-31128
Встроенная база данных Императрица Без ограничений2–1 байт2 ГБ32,7672 ГБ2 ГБ64 биты0000-01-019999-12-3132
EXASolution Без ограниченийБез ограниченийБез ограничений10,000Н / Д2 МБ128 бит0001-01-019999-12-31256
FileMaker 8 ТБ8 ТБ8 ТБ256 000 0004 ГБ10,000,0001 миллиард символов, от 10 ^ -400 до 10 ^ 400, + -0001-01-014000-12-31100
Firebird Без ограничений~ 32 ТБ65 536 БЗависит от используемых типов данных32 ГБ32,767 Б64 бита1003276831
HSQLDB 64 ТББез ограниченийБез ограниченийБез ограничений64 ТББез ограниченийБез ограничений0001-01-019999-12-31128
H2 64 ТББез ограниченийБез ограниченийБез ограничений64 ТББез ограничений64 бита-9999999999999999Без ограничений
Максимальный размер БДМаксимальный размер таблицыМаксимальный размер строкиМаксимальный размер столбцов в строкеМаксимальный размер Blob / ClobМаксимальный размер CHARМакс. Размер ЧИСЛАМин. Значение ДАТЫМакс. Значение ДАТЫМаксимальный размер имени столбца
Informix Dynamic Server ~ 128 ПБ~ 128 ПБ32,765 байт (без больших объектов)32,7654 ТБ32,7651001.01.1000131.12.9999128 байт
Ingres Без ограниченийБез ограничений256 КБ10242 ГБ32 000 Б64 бита00019999256
InterBase Без ограничений~ 32 ТБ65,536 БЗависит от используемых типов данных2 ГБ32,767 Б64 бита1003276831
СУБД ЛИНТЕР SQL Без ограничений2 строки64 КБ (без BLOB), 2 ГБ (каждое значение BLOB)2502 ГБ4000 B64 бита0001-01-019999-12-3166
MariaDB Без ограниченийОграничения хранилища MyISAM: 256 ТБ; Пределы хранилища Innodb: 64 ТБ; Пределы хранения Ария: ???64 КБ4,0964 ГБ (длинный текст, длинный большой блок)64 КБ (текст)64 бита1000999964
Microsoft Access (JET)2 ГБ2 ГБ16 МБ25564 КБ (мемо-поле), 1 ГБ (поле «OLE-объект»)255 Б (текстовое поле)32 бита0100999964
Microsoft Visual Foxpro Без ограничений2 ГБ65,500 Б2552 ГБ16 МБ32 бита0001999910
Microsoft SQL Server 524 272 ТБ (32 767 файлов * максимальный размер файла 16 ТБ)

16 ZB на экземпляр

524 272 ТБ8 060 байт / 2 ТБ1024/30 000 (с разреженными столбцами)2 ГБ / без ограничений (с использованием объекта RBS / FILESTREAM)2 ГБ126 бит00019999128
Microsoft SQL Server Compact (встроенная база данных) 4 ГБ4 ГБ8,060 байт10242 ГБ4000154 бит00019999128
Mimer SQL Без ограниченийБез ограничений16000252Без ограничений ограничения1500045 цифр0001-01-019999-12-31128
MonetDB Без ограниченийБез ограниченийБез ограниченийБез ограничений2 ГБ2 ГБ128 бит-9999-01-019999-12-311024
MySQL Без ограниченийхранилище MyISAM лимиты : 256 ТБ; Пределы хранилища Innodb: 64 ТБ64 КБ40964 ГБ (длинный текст, длинный большой двоичный объект)64 КБ (текст)64 бита1000999964
OpenLink Virtuoso 32 ТБ на экземпляр (без ограничений через эластичный кластер)Размер БД (или 32 ТБ)4 КБ2002 ГБ2 ГБ209999100
Oracle 2ПБ (со стандартным блоком 8k)

8PB (с максимальным блоком 32k) 8EB (с максимальным блоком 32k и опцией BIGFILE)

4 ГБ * размер блока (с табличным пространством BIGFILE)8 КБ1000128 ТБ32,767 Б126 бит-47129999128
Максимальный размер БДМаксимальный размер таблицыМаксимальный размер строкиМаксимальный размер столбцов в строкеМаксимальный размер Blob / ClobМаксимальный размер СИМВОЛОВМаксимальный размер ЧИСЛАМ ин. Значение ДАТЫМаксимальное значение ДАТЫМаксимальный размер имени столбца
Распространенный PSQL 4 миллиарда объектов256 ГБ2 ГБ15362 ГБ8000 байтов64 бита01-01-000112-31- 9999128 байтов
Многогранники Ограничено доступным ОЗУ, адресным пространством2 строкиНеограниченно65,5364 ГБ (в зависимости от ОЗУ)4 ГБ (в зависимости от ОЗУ)64 бита0001-01-018000-12 -31255
PostgreSQL Без ограничений32 ТБ1,6 ТБ250–1600 в зависимости от типа1 ГБ (текст, байт) - хранится встроенным или 4 ТБ (хранится в pg_largeobject)1 ГББез ограничений−4,7135 874 89763
Raima Database Manager Без ограничений2-1 строки32 КБ10004 ГБchar: 256, варча r: 4 КБ64 бита0001-01-0111758978-12-3131
Сервер RDM Без ограничения2-1 строки32 КБ32,768Без ограничений32 КБ64 бита0001 -01-0111758978-12-3132
SAP HANA ??????????
solidDB 256 ТБ256 ТБ32 КБ + данные BLOBОграничено размером строки4 ГБ4 ГБ64 бита-32768-01-0132767-12-31254
SQL Anywhere 104 ТБ (13 файлов, каждый файл до 8 ТБ (32 КБ страницы))Ограничено размером файлаОграничено размером файла450002 ГБ2 ГБ64 бита0001-01-019999-12-31128 байт
SQLite 128 ТБ (2 страницы * максимальный размер страницы 64 КБ)Ограничено размером файлаОграничено размером файла32,7672 ГБ2 ГБ64 битаБез типа DATEБез типа DATEБез ограничений
Teradata UnlimitedUnlimited64000 wo / lobs (64 GB w / lobs)20482 ГБ6400038 цифр0001-01-019999-12 -31128
UniVerse Без ограниченийБез ограниченийБез ограниченийБез ограниченийБез ограниченийБез ограниченийБез ограниченийБез ограниченийБез ограниченийБез ограничений
Максимальный размер БДМаксимальный размер таблицыМаксимальный размер строкиМаксимальное количество столбцов в строкеМаксимальный размер Blob / ClobМаксимальный размер CHARМаксимальный размер ЧИСЛАMin Значение DATEМаксимальное значение DATEМаксимальный размер имени столбца

Примечание (1): Максимальный размер базы данных Firebird 2.x фактически неограничен с самой большой известной базой данных размер>980 ГБ. Максимальный размер базы данных Firebird 1.5.x: 32 ТБ.

Примечание (2): Ограничение составляет 10 при использовании типа данных DECIMAL.

Примечание (3): InnoDB ограничен 8000 байтами (исключая VARBINARY, VARCHAR, BLOBили TEXTстолбцы).

Примечание (4): InnoDB - это ограничено 1017 столбцами.

Примечание (6): Использование VARCHAR (MAX)в SQL 2005 и более поздних версиях.

Примечание (7): При использовании размера страницы 32 КБ и при хранении данных BLOB / CLOB в файле базы данных.

Примечание (8): Применяется ограничение на размер массива Java в 2 147 483 648 (2) объектов на массив. Это ограничение применяется к количеству символов в именах, строках в таблице, столбцах в таблице и символах в CHAR/ VARCHAR.

Примечание (9): Несмотря на отсутствие типа данных даты, SQLite действительно включает функции даты и времени, которые работают с отметками времени между 24 ноября 4714 г. до н.э. и 1 ноября 5352.

Примечание (10): Тип Informix DATETIME имеет регулируемый диапазон от YEAR только до 1/10000 секунды. Диапазон дат DATETIME: 0001-01-01 00: 00: 00.00000 - 9999-12-31 23: 59: 59.99999.

Примечание (11): Начиная с версии 12c. Более ранние версии поддерживают до 4000 Б.

Примечание (12): Предел 128 ПБ относится к пределу хранилища для одного экземпляра сервера Informix. Informix v12.10 и более поздние версии поддерживают использование методов сегментирования для распределения таблицы по нескольким экземплярам сервера. Распределенная база данных Informix не имеет верхнего предела размера таблицы или базы данных.

Таблицы и представления

Информация о том, какие таблицы и представления (кроме базовых) поддерживаются изначально.

Временная таблицаМатериализованное представление
4-е измерение ДаНет
ADABAS ??
Adaptive Server Enterprise ДаДа - см. Предварительно вычисленные наборы результатов
Сервер базы данных Advantage ДаНет (только общие представления)
Altibase ДаНет (только общие представления)
Apache Derby ДаНет
ClustrixDB ДаНет
CUBRID НетНет
DB2 ДаДа
Встроенная база данных Empress ДаДа
EXASolution ДаНет
Firebird ДаНет (только общие представления)
HSQLDB ДаНет
H2 ДаНет (только общие представления)
Informix Dynamic Server ДаNo
Ingres ДаНет
InterBase ДаНет
СУБД Linter SQL ДаДа
LucidDB НетНет
MariaDB ДаNo
MaxDB ДаНет
Microsoft Access (JET)НетНет
Microsoft Visual Foxpro ДаДа
Microsoft SQL Server ДаДа
Microsoft SQL Server Compact (встроенная база данных) ДаНет
Mimer SQL НетНет
MonetDB ДаНет (только общие представления)
MySQL ДаNo
Oracle ДаДа
Oracle Rdb ДаДа
OpenLink Virtuoso ДаДа
Pervasive PSQL ДаНет
СУБД Polyhedra НетНет (только общие представления)
PostgreSQL ДаДа
Raima Database Manager ДаНет
Сервер RDM ДаНет
SAP HANA Да?
solidDB ДаНет (только общие представления)
SQL Anywhere ДаДа
SQLite ДаНет
Teradata ДаДа
UniData ДаНет
UniVerse ДаНет
Временная таблицаМатериализованное представление

Примечание (1): Сервер дает базу данных tempdb, которая может сообщить д. ля общедоступных и частных (для сеанса) временных таблиц.

Примечание (2): Материализованные представления не поддерживаются в Informix; Этот термин используется в документации IBM для обозначения временной таблицы, используемой для выполнения запроса представления, когда она слишком сложна, но, например, определить способ ее обновления или построить на ней индекс. Этот термин определен в Руководстве по производительности Informix.

Примечание (4): Материализованные представления можно эмулировать с помощью хранимых процедур и триггеров.

Примечание (5): Материализованные представления теперь являются стандартными.

Индексы

Информация о том, какие индексы (кроме базовых индексов B- /B + tree ) поддерживаются изначально.

R- /R + tree Hash Expression Partial Reverse Bitmap GiST GIN Full-text Spatial Предотвращение дублирования индексов
4-е измерение ?Кластер??????Да??Нет
ADABAS ???????????Нет
Adaptive Server Enterprise НетНетДаНетДаНетНетНетДа??Нет
Сервер базы данных Преимущество НетНетДаНетДаДаНетНетДа??Нет
Apache Derby НетНетНетНетНетНетНетНетNo??Нет
ClustrixDB НетДаНетНетНетНетНетНетНетНет?Нет
CUBRID НетНетДаДаДаНетНетНетНетНетНетНет
DB2 ДаДаДа sНетДаДаНетНетДа??Нет
Встроенная база данных Empress ДаНетНетДаНетДаНетНетНет??Нет
EXASolution НетДаНетНетНетНетНетНетНет??Нет
Firebird НетНетДаНетДаНетНетНетNo??Нет
HSQLDB НетНетНетНетНетНетНетНетНет??Нет
H2 НетДаНетНетНетНетНетНетДаДа?Нет
Informix Dynamic Server ДаДаДаДаДаДаДаДаДаДаДаДа
Ingres ДаДаIngres v10NoNoIngres v10NoNoNo??No
InterBase НетНетНетНетНетНетНетНетНет??Нет
СУБД Linter SQL НетДа временные индексы для объединений на равенствоДа для некоторого скаляра такие функции, как НИЖНИЙ и ВЕРХНИЙНетНетНетНетНетДаНетНетДа
LucidDB НетНетНетНетНетДаНетНетНет??Нет
MariaDB Aria и MyISAM таблицы и, начиная с v10.2.2, только таблицы InnoDB MEMORY, InnoDB, только таблицыPERSISTENT только виртуальные столбцыНетНетНетНетНетДаAria и MyISAM таблицы и, начиная с v10.2.2, только таблицы InnoDB ?Нет
MaxDB НетНетНетНетНетНетНетНетНет??Нет
Microsoft Access (JET)НетНетНетНетНетНетНетНетNo??Нет
Microsoft Visual Foxpro НетНетДаДаДаДаНетНетНет??Нет
Microsoft SQL Server Пространственные индексыДаДаДадля вычисляемых столбцовИндекс фильтра Bitmap для запроса Star JoinНетНетДаДа?Нет
Microsoft SQL Server Compact (встроенная база данных) НетНетНетНетНетНетНетНетNo??Нет
Mimer SQL НетНетНетНетДаНетНетНетДаДаНетНет
MonetDB НетДаНетНетНетНетНетНетНетНетНетНет
MySQL Пространственные индексыПАМЯТЬ, Кластер (NDB), InnoDB, только таблицыNoНетНетНетНетНеттаблицы MyISAM и, начиная с v5.6.4, таблицы InnoDBтаблицы MyISAM и, начиная с v5.7.5, таблицы InnoDB?Нет
OpenLink Virtuoso ДаКластерДаДаНетДаНетНетДаДа (только коммерческий)НетНет
Oracle ДаКластерные таблицыДаДаДаДаНетНетДаДа?Да
Oracle Rdb НетДа?НетНет?НетНет???Нет
Pervasive PSQL НетНетНетНетНетНетНетНетНетНетНетНет
СУБД Многогранники НетДаНетНетНетНетНетНетНетНет?Нет
PostgreSQL ДаДаДаДаДаДаДаДаДаPostGIS?Нет
Raima Database Manager ДаДаНетДаДаНетНетНетНетДаНетНет
Сервер RDM НетНетНетДаДаНетНетНетНетНетНетНет
SAP HANA ???????????Нет
solidDB НетНетНетНетДаНетНетНетНетНетНетНет
SQL Anywhere НетНетДаНетНетНетНетНетДаДа?Да
SQLite ДаНетДаДаНетНетНетНетДаSpatiaLite?Нет
SQream DB ????Да??????Нет
Teradata НетДаДаДаНетДаНетНет???Нет
UniVerse ДаДаДаДаДаНетНетНет?Да?Нет
R- /R + tree Хэш Выражение Частичное Обратное Растровое изображение GiST Полнотекстовый Spatial Предотвращение дублирования индекса

Примечание (1): Пользователям необходимо использовать функцию из библиотеки freeAdhocUDF или аналогичной.

Примечание (2): Может быть реализован для большинства типов данных с использованием индексов на основе выражений.

Примечание (3): Может эмулироваться путем индексирования вычисляемого столбца (обновить нелегко) или с помощью «индексированного представления» (собственное имя не работает с любым представлением).

Примечание (4): Используется для индекса InMemory ColumnStore, временного хеш-индекса для хэш-соединения, некластеризации и коэффициента заполнения.

Примечание (5): InnoDB автоматически генерирует записи адаптивного хеш-индекса по мере необходимости.

Примечание (6): Может быть реализовано с использованием индексов на основе функций в Oracle 8i и выше, но для использования индекса необходимо использовать функцию в sql.

Примечание (7): Функциональный индекс PostgreSQL можно использовать для изменения порядка полей.

Примечание (10): B + -дерево и полнотекстовый формат пока только.

Примечание (11): Индексирование R-Tree доступно в базовой версии с Locator, но для некоторых функций требуется Personal Edition или Enterprise Edition с опцией Spatial.

Возможности базы данных
Объединение Пересечение Кроме Внутренние объединения Внешние объединения Внутренний выборОбъединение объединений Большие двоичные объекты и Clobs Общие табличные выражения Оконные функции Параллельный запросТаблицы с системным управлением версиями
4-е измерение ДаДаДаДаДаНетНетДа????
ADABAS Да???????????
Adaptive Server Enterprise Да??ДаДаДаДаДа??Да?
Сервер базы данных Advantage ДаНетНетДаДаДаДаДа?Нет??
Altibase ДаДаДа, через МИНУСДаДаДаДаДаНетНетНет?
Apache Derby ДаДаДаДаДаДа?ДаНетНет??
ClustrixDB ДаНетНетДаДаДаНетДаДаДаДа?
CUBRID ДаДаДаДаДаДаДаДаНетДа??
DB2 ДаДаДаДаДаДаДаДаДаДаДаДа
Встроенная база данных Empress ДаДаДаДаДаДаДаДа????
EXASolution ДаДаДаДаДаДаДаНетДаДаДа?
Firebird ДаНетНетДаДаДаДаДаДаДа??
HSQLDB ДаДаДаДаДаДаДаДа sДаНетДа?
H2 ДаДаДаДаДаДаНетДаэкспериментальныйДа??
Informix Dynamic Server ДаДаДа, через МИНУСДаДаДаДаДаДаДаДа?
Ingres ДаНетНетДаДаДаДаДаНетНет??
InterBase Да??ДаДа??Да????
СУБД Linter SQL ДаДаДаДаДаДаДаДаДаДаНетНет
LucidDB ДаДаДаДаДаДаДаНет????
MariaDB Да10.3+10.3+ДаДаДаНетДаДаДаNoДа
MaxDB Да??ДаДаДаНетДа????
Microsoft Access (JET)ДаНетНетДаДаДаНетДаНетНет??
Microsoft Visual Foxpro Да??ДаДаДа?Да????
Microsoft SQL Server ДаДаДаДаДаДаДаДаДаДаДаДа
Microsoft SQL Server Compact (встроенная база данных) ДаНетНетДаДа?НетДаНетНет??
Mimer SQL ДаДаДаДаДаДа?ДаДаНетНет?
MonetDB ДаДаДаДаДаДаДаДаДаДаДаНет
MySQL ДаНетНетДаДаДаНетДа8+НетNoNo
НетНетНетДаДаДаДаДа????
OpenLink Virtuoso ДаДаДаДаДаДа?Да??Да?
Oracle ДаДаДа, через МИНУСДаДаДаДаДаДаДаДаNo
Oracle Rdb ДаДаДаДаДаДаДаДа????
Pervasive PSQL ДаНетНетДаДа??ДаНетНетНет?
СУБД Многогранники ДаДаДаДаДаНетНетДаНетНетНет?
PostgreSQL ДаДаДаДаДаДаДаДаДаДаДаNo
Raima Database Manager НетНетНетДаДаНетНетДаНетНетНет?
Сервер RDM ДаНетНетДаДаДаНетДаНетНетНет?
SAP HANA ????????????
solidDB ДаДаДаДаДаДаДаДаДаНетНет?
SQL Anywhere ДаДаДаДаДаДаДаДаДаДаДа?
SQLite ДаДаДаДатолько СЛЕВАДаНетДа3.8.3+3.25+НетNo
SQream DB Только ВСЕНетНетДаДаДаДаНетДаДаНет?
Teradata ДаДаДаДаДаДаДаДаДаДаДа?
UniVerse ДаДаДаДаДаДаДаНетНетНет??
Объединение Пересечение Кроме Внутренние объединения Внешние объединения Внутренний выборОбъединение объединений BLOB-объектов и Clobs Общие табличные выражения Оконные функции Параллельный запросТаблицы с системным управлением версиями

Примечание (1): Рекурсивные CTE, представленные в 11gR2, заменяют аналогичную конструкцию CONNECT BY.

Типы данных
Система типов Целое число Плавающая точка ДесятичноеСтрока Двоичное Дата / времяЛогическое Другое
4-е измерение СтатическийUUID (16-бит), SMALLINT (16-бит), INT (32-бит), BIGINT (64-бит), NUMERIC (64-бит)REAL, FLOATREAL, FLOATCLOB, TEXT, VARCHARBIT, BIT VARYING, BLOBDURATION, INTERVAL, TIMESTAMPBOOLEANPICTURE
Altibase StaticSMALLINT (16-бит), INTEGER (32-бит), BIGINT (64-бит)REAL (32-бит), DOUBLE (64-бит)DECIMAL, NUMERIC, NUMBER, FLOATCHAR, VARCHAR, NCHAR, NVARCHAR, CLOBBLOB, BYTE, NIBBLE, BIT, VARBITДАТАГЕОМЕТРИЯ
ClustrixDB СтатическийTINYINT (8 бит), SMALLINT (16 бит), MEDIUMINT ( 24-бит), INT (32-бит), BIGINT (64-бит)FLOAT (32-бит), DOUBLEDECIMALCHAR, BINARY, VARCHAR, VARBINARY, TEXT, TINYTEXT, MEDIUMTEXT, LONGTEXTTINYBLOB, BLOB, MEDI UMBLOB, LONGBLOBDATETIME, DATE, TIMESTAMP, YEARBIT (1), BOOLEANENUM, SET,
CUBRID StaticSMALLINT (16-бит), INTEGER (32-бит), BIGINT (64-бит)FLOAT, REAL (32-бит), DOUBLE (64-бит)DECIMAL, NUMERICCHAR, VARCHAR, NCHAR, NVARCHAR, CLOBBLOBDATE, DATETIME, TIME, TIMESTAMPBITMONETARY, BIT VARYING, SET, MULTISET, SEQUENCE, ENUM
DB2 ?SMALLINT (16-бит), INTEGER (32-бит), BIGINT (64-бит)DECFLOAT, REAL, DOUBLEDECIMALCLOB, CHAR, VARCHARBINARY, VARBINARY, BLOBДАТА, ВРЕМЯ, TIMESTAMP С ЧАСОВЫМ ПОЯСОМ, TIMESTAMP БЕЗ ЧАСОВОГО ПОЯСАBOOLEANXML, GRAPHIC, VARGRAPHIC, DBCLOB, ROWID
Встроенная база данных Empress СтатическийTINYINT, SQL_TINYINT или INTEGER8; SMALLINT, SQL_SMALLINT или INTEGER16; INTEGER, INT, SQL_INTEGER или INTEGER32; BIGINT, SQL_BIGINT или INTEGER64REAL, SQL_REAL или FLOAT32; DOUBLE PRECISION, SQL_DOUBLE или FLOAT64; FLOAT или SQL_FLOAT; EFLOATDECIMAL, DEC, NUMERIC, SQL_DECIMAL или SQL_NUMERIC; ДОЛЛАРХАРАКТЕР, СИМВОЛ, РАЗЛИЧНЫЙ ХАРАКТЕР, НАЦИОНАЛЬНЫЙ ХАРАКТЕР, НАЦИОНАЛЬНЫЙ ХАРАКТЕР РАЗЛИЧНЫЙ, NLSCHARACTER, СИМВОЛ БОЛЬШОЙ ОБЪЕКТ, ТЕКСТ, НАЦИОНАЛЬНЫЙ ХАРАКТЕР БОЛЬШОЙ ОБЪЕКТ, NLSTEXTДВОИЧНЫЙ ОБЪЕКТ; BULKDATE, EDATE, TIME, ETIME, EPOCH_TIME, TIMESTAMP, MICROTIMESTAMPBOOLEANSEQUENCE 32, SEQUENCE
EXASolution StaticTINYINT, SMALLINT, INTEGER, BIGINT,REAL, FLOAT, DOUBLEDECIMAL, DEC, NUMERIC, NUMBERCHAR, NCHAR, VARCHAR, VARCHAR2, NVARCHAR, NVARCHAR2, CLOB, NCLOBN / ADATE, TIMESTAMP, INTERVALBOOLEAN, BOOLGEOMETRY
FileMaker StaticНе поддерживаетсяНе поддерживаетсяНОМЕРТЕКСТКОНТЕЙНЕРTIMESTAMPНе поддерживается
Firebird ?INT64, INTEGER, SMALLINTDOUBLE, FLOATDECIMAL, NUMERIC, DECIMAL (18, 4), DECIMAL (10, 4)BLOB, CHAR, CHAR (x) CHARACTER SET UNICODE_FSS, VARCHAR (x) CHARACTER SET UNICODE_FSS, VARCHARBLOB SUB_TYPE TEXT, BLOBDATE, TIME, TIMESTAMP (без часового пояса)BOOLEANTIMESTAMP, CHAR (38), определяемые пользователем типы (домены)
Система типов Целое число с плавающей точкой ДесятичноеСтрока Двоичное Дата / времяЛогическое Другое
HSQLDB СтатическоеTINYINT (8 -бит), SMALLINT (16-бит), INTEGER (32-бит), BIGINT (64-бит)DOUBLE (64-бит)DECIMAL, NUMERICCHAR, VARCHAR, LONGVARCHAR, CLOBBINARY, VARBINARY, LONGVARBINARY, BLOBDATE, TIME, TIMESTAMP, INTERVALBOOLEANOTHER (объект), BIT, BIT VARYING, ARRAY
Informix Dynamic Server Static + UDTSMALLINT (16-разрядный), INT (32-разрядный), INT8 (64-разрядный собственный), BIGINT ( 64-разрядный)SMALLFLOAT (32-разрядный), FLOAT (64-разрядный)DECIMAL (32-разрядный плавающий / фиксированный), MONEYCHAR, VARCHAR, NCHAR, NVARCHAR, LVARCHAR, CLOB, TEXTTEXT, BYTE, BLOB, CLOBDATE, DATETIME, INTERVALBOOLEANSET, LIST, MULTISET, ROW, TIMESERIES, SPATIAL, GEODETIC, JSON, BSON, USER DEFINED TYPES
Ingres StaticTINYINT (8-бит), SMALLINT (16-бит), INTEGER (32-бит), BIGINT (64-бит)FLOAT4 (32-бит), FLOAT (64-бит)DECIMALC, CHAR, VARCHAR, LONG VARCHAR, NCHAR, NVARCHAR, LONG NVARCHAR, TEXTBYTE, VARBYTE, LONG VARBYTE (BLOB)DATE, ANSIDATE, INGRESDATE, TIME, TIMESTAMP, INTERVALN / AДЕНЬГИ, ОБЪЕКТ_КЛЮЧ, ТАБЛИЦА_КЛЮЧ, ТИПЫ ДАННЫХ, ОПРЕДЕЛЕННЫЕ ПОЛЬЗОВАТЕЛЕМ (через OME)
СУБД Linter SQL Статический + Динамический (в хранимых процедурах)SMALLINT (16 бит), INTEGER ( 32-бит), BIGINT (64-бит)REAL (32-бит), DOUBLE (64-бит)DECIMAL, NUMERICCHAR, VARCHAR, NCHAR, NVARCHAR, BLOBBYTE, VARBYTE, BLOBDATEBOOLEANГЕОМЕТРИЯ, EXTFILE
MariaDB StaticTINYINT (8-бит), SMALLINT (16-бит), MEDIUMINT (24-бит), INT (32-бит), BIGINT (64-бит)FLOAT (32-бит), DOUBLE (также известный как REAL) (64-бит)DECIMALCHAR, BINARY, VARCHAR, VARBINARY, TEXT, TINYTEXT, MEDIUMTEXT, LONGTEXTTINYBLOB, BLOB, MEDIUMBLOB, LOBLOBДАННЫЕ IME, DATE, TIMESTAMP, YEARBIT (1), BOOLEAN (aka BOOL) = синоним TINYINTENUM, SET, типы данных ГИС (Geometry, Point, Curve, LineString, Surface, Polygon, GeometryCollection, MultiPoint, MultiCurve, MultiLineString, MultiSurface, MultiPolygon)
Microsoft SQL Server СтатическийTINYINT, SMALLINT, INT, BIGINTFLOAT, REALNUMERIC, DECIMAL, SMALLMONEY, MONEYCHAR, VARCHAR, TEXT, NCHAR, NVARCHAR, NTEXTBINARY, VARBINARY, IMAGE, FILESTREAM, FILETABLEDATE, DATETIMEOFFSET, DATETIME2, SMALLDATETIME, DATETIME, TIMEBITCURSOR, TIMESTAMP, HIERARCHYID, UNIQUEIDENTIFIER, SQL_VARIANT, XML, TABLE, Microsoft Geometry, Geography, Custom579 datatypes Компактный (встроенная база данных) СтатическийTINYINT, SMALLINT, INT, BIGINTFLOAT, REALNUMERIC, DECIMAL, MONEYNCHAR, NVARCHAR, NTEXTBINARY, VARBINARY, IMAGEDATETIMEBITTIMEST AMP, ROWVERSION, UNIQUEIDENTIFIER, IDENTITY, ROWGUIDCOL
Mimer SQL СтатическийSMALLINT, INT, BIGINT, INTEGER (n)FLOAT, REAL, DOUBLE, FLOAT (n) NUMERIC, DECIMALCHAR, VARCHAR, NCHAR, NVARCHAR, CLOB, NCLOBBINARY, VARBINARY, BLOBDATE, TIME, TIMESTAMP, INTERVALBOOLEANДОМЕНЫ, ОПРЕДЕЛЕННЫЕ ПОЛЬЗОВАТЕЛЕМ ТИПЫ (включая местоположение, широту, долготу и координату заранее определенных типов пространственных данных)
MonetDB Статический, расширяемыйTINYINT, SMALLINT, INT, INTEGER, BIGINT, HUGEINT, SERIAL, BIGSERIALFLOAT, FLOAT (n), REAL, DOUBLE, DOUBLE PRECISIONDECIMAL, NUMERICCHAR, CHAR (n), VARCHAR (n), CLOB, CLOB (n), TEXT, STRINGBLOB, BLOB (n)DATE, TIME, TIME WITH TIME ZONE, TIMESTAMP, TIMESTAMP WITH TIME ZONE, INTERVAL MONTH, INTERVAL DAY, INTERVAL SECONDBOOLEANJSON, JSON (n), URL, URL (n), INET, UUID, типы данных GIS ( Геометрия, Точка, Кривая, LineString, Поверхность, Po lygon, GeometryCollection, MultiPoint, MultiCurve, MultiLineString, MultiSurface, MultiPolygon), определяемые пользователем типы
MySQL StaticTINYINT (8-бит), SMALLINT (16-бит), MEDIUMINT (24- бит), INT (32-бит), BIGINT (64-бит)FLOAT (32-бит), DOUBLE (он же REAL) (64-бит)DECIMALCHAR, BINARY, VARCHAR, VARBINARY, TEXT, TINYTEXT, MEDIUMTEXT, LONGTEXTTINYBLOB, BLOB, MEDIUMBLOB, LONGBLOBDATETIME, DATE, (1), BOOLEAN (aka BOOL) = синоним TINYINTENUM, SET, типы данных ГИС (Geometry, Point, Curve, LineString, Surface, Polygon, GeometryCollection, MultiPoint, MultiCurve, MultiLineString, MultiSurface, MultiPolygon)
OpenLink Virtuoso Статический + ДинамическийINT, INTEGER, SMALLINTREAL, DOUBLE PRECISION, FLOAT, FLOAT '(' INTNUM ')'DECIMAL, DECIMAL '(' INTNUM ')', DECIMAL '(' INTNUM ',' INTNUM ')', NUMERIC, NUMERIC '(' INTNUM ')', NUMERIC '(' INTNUM ',' Целое число ')'ХАРАКТЕР, СИМВОЛ '(' INT NUM ')', VARCHAR, VARCHAR '(' INTNUM ')', NVARCHAR, NVARCHAR '(' INTNUM ')'BLOBTIMESTAMP, DATETIME, TIME, DATEн / дЛЮБОЙ, ССЫЛКА (IRI, URI), UDT (тип, определяемый пользователем), ГЕОМЕТРИЯ (BOX, BOX2D, BOX3D, BOXM, BOXZ, BOXZM, CIRCULARSTRING, COMPOUNDCURVE, CURVEPOLYCOLLECTION, EMPETURVE, CURVEPOLYCOLLEGON, GEOMETRYCOLLECTIONM, GEOMETRYCOLLECTIONZ, GEOMETRYCOLLECTIONZM, LINESTRING, LINESTRINGM, LINESTRINGZ, LINESTRINGZM, MultiCurve, MultiLineString, MULTILINESTRINGM, MULTILINESTRINGZ, MULTILINESTRINGZM, МНОГОТОЧЕЧНЫЙ, MULTIPOINTM, MULTIPOINTZ, MULTIPOINTZM, MultiPolygon, MULTIPOLYGONM, MULTIPOLYGONZ, MULTIPOLYGONZM, точка, точка ©, POINTZ, POINTZM, ПОЛИГОН, POLYGONM, POLYGONZ, POLYGONZM, POLYLINE, POLYLINEZ, RING, RINGM, RINGZ, RINGZM)
Система типов Целое число Плавающая точка Десятичное числоСтрока Двоичное Дата / ВремяЛогическое Другое
Oracle Статическое + Динамическое (через ANYDATA)ЧИСЛОBINARY_FLOAT, BINARY_DOUBLENUMBERCHAR, VARCHAR2, CLOB, NCLOB, NVARCHAR2, NCHAR, LONG (устарело)BLOB, RAW, LONG RAW (устарело), ​​BFILEDATE, TIMESTAMP (с / без часового пояса), ИНТЕРВАЛН / ДПРОСТРАНСТВЕННОЕ, ИЗОБРАЖЕНИЕ, АУДИО, ВИДЕО, DICOM, XMLType
Распространенный PSQL СтатическийBIGINT, INTEGER, SMALLINT, TINYINT, UBIGINT, UINTEGER, USMALLINT, UTINYINTBFLOAT4, BFLOAT8, DOUBLE, FLOATDECIMAL, NUMERIC, NUMERICSA, NUMERICSLB, NUMERICSLS, NUMERICSTB, NUMERICSVARCHARCH, <93GARCHARCHARCH, <281CHARCHARCH,BINARY, LONGVARBINARY, VARBINARYDATE, DATETIME, TIMEBITCURRENCY, IDENTITY, SMALLIDENTITY, TIMESTAMP, UNIQUEIDENTIFIER Многогранник>СтатическийINTEGER8 (8-битный), INTEGER (16-битный), INTEGER (32-битный), INTEGER64 (64-битный)FLOAT32 (32-битный), FLOAT ( он же НАСТОЯЩИЙ; 64-бит)Н / ДVARCHAR, LARGE VARCHAR (он же CHARACTER LARGE OBJECT)LARGE BINARY (он же BINARY LARGE OBJECT)DATETIMEBOOLEANН / Д
PostgreSQL СтатическийSMALLINT (16-бит), INTEGER (32-бит), BIGINT (64-бит)REAL (32-бит), DOUBLE PRECISION (64-бит)DECIMAL, NUMERICCHAR, VARCHAR, TEXTBYTEAДАТА, ВРЕМЯ (с / без ЧАСОВОГО ПОЯСА), TIMESTAMP (с / без ЧАСОВОГО ПОЯСА), ИНТЕРВАЛBOOLEANENUM, POINT, LINE, LSEG, BOX, PATH, POLYGON, CIRCLE, CIDR, INET, MACADDR, BIT, UUID, XML, JSON, JSONB, массивы, составные части, диапазоны, настраиваемые
Raima Database Manager Statictinyint, smallint, integer, bigintreal, float, doubleN / Achar, varchar, wchar, varwchar, long varchar, long varwcharbinary, varbinary, long varbinaryдата, время, отметка временибитН / Д
Сервер RDM Статическийtinyint, smallint, integer, bigintreal, float, doubledecimal, numericchar, varchar, wchar, varwchar, long varchar, long varwcharbinary, varbinary, long varbinaryдата, время, отметка временибитrowid
SAP HANA СтатическийTINYINT, SMALLINT, INTEGER, BIGINTSMALLDECIMAL, REAL, DOUBLE, FLOAT, FLOAT (n)DECIMALVARCHAR, NVARCHAR, ALPHANUM, SHORTTEXTVARBINARY, BINTEXT, BLOBДАТА, ВРЕМЯ, ВРЕМЯ, ВРЕМЕННАЯ ДАТАBOOLEANCLOB, NCLOB, TEXT, ARRAY, ST_GEOMETRY, ST_POINT, ST_MULTIPOINT, ST_LINESTRING, ST_MULTILINESTRING, ST_MULTILINESTRING, ST_MULTILINESTRING, ST_MULTILINESTRING. 594>solidDB СтатическийTINYINT (8-разрядный), SMALLINT (16-разрядный), INTEGER (32-разрядный), BIGINT (64-разрядный)REAL (32- бит), DOUBLE (64-бит), FLOAT (64-бит)DECIMAL, NUMERIC (51 цифра)CHAR, VARCHAR, LONG VARCHAR, WCHAR, WVARCHAR, LONG WVARCHARДВОИЧНАЯ, ВАРБИНАРНАЯ, ДЛИННАЯ ВАРБИНАРНАЯDATE, TIME, TIMESTAMP
SQLite DynamicINTEGER (64-бит)REAL (aka FLOAT, DOUBLE) (64-бит)Н / ДТЕКСТ (он же СИМВОЛ, CLOB)BLOBН / ДН / ДН / Д
SQream DB СтатическийTINYINT (8-бит), SMALLINT (16-бит), INTEGER (32-бит), BIGINT (64-бит)REAL (32-бит), DOUBLE (также известный как FLOAT) (64-бит)Н / ДCHAR, VARCHAR, NVARCHARН / ДДАТА, ДАТАВРЕМЯ (также известный как TIMESTAMP)BOOLН / Д
Система типов Целое число Плавающая точка ДесятичноеСтрока Двоичный Дата / ВремяЛогическое Другое
Teradata СтатическоеBYTEINT (8-бит), SMALLINT (16-бит), INTEGER (32- бит), BIGINT (64-бит)FLOAT (64-бит)DECIMAL, NUMERIC (38 цифр)CHAR, VARCHAR, CLOBBYTE, VARBYTE, BLOBDATE, TIME, TIMESTAMP (без TIME ZONE)PERIOD, INTERVAL, GEOMETRY, XML, JSON, UDT (тип, определяемый пользователем)
UniData ДинамическийN / ПН / ПН / ПН / ПН / ПН / ПН / ДН / Д
UniVerse ДинамическийН / ДН / ДН / ДН / ДН / ПН / ПН / ПН / Д
Система типов Целое число Плавающая точка ДесятичноеСтрока Двоичное Дата / ВремяЛогическое Другое
Другие объекты

Информация о том, что еще объекты поддерживаются изначально.

Data Domain Курсор Триггер Функция Процедура Внешняя процедура
4-е измерение ДаНетДаДаДаДа
ADABAS ?Да?Да?Да?Да
Adaptive Server Enterprise ДаДаДаДаДаДа
Сервер базы данных Advantage ДаДаДаДаДаДа
Altibase ДаДаДаДаДаДа
Apache Derby НетДаДаДаДаДа
ClustrixDB НетДаНетДаДаДа
CUBRID ДаДаДаДаДаДа
Встроенная база данных Empress Да через RANGE CHECKДаДаДаДаДа
EXASolution ДаНетНетДаДаДа
DB2 Да через CHECK CONSTRAINTДаДаДаДаДа
Firebird ДаДаДаДаДаДа
HSQLDB ДаНетДаДаДаДа
H2 ДаНетДаДаДаДа
Informix Dynamic Server Да через CHECKДаДаДаДаДа
Ingres ДаДаДаДаДаДа
InterBase ДаДаДаДаДаДа
СУБД Linter SQL НетДаДаДаДаНет
LucidDB НетДаНетДаДаДа
MariaDB ДаДаДаДаДаYes
MaxDB YesYesYesYesYes?
Microsoft Access (JET)YesNoNoNoYes, But single DML/DDL OperationYes
Microsoft Vis ual Foxpro NoYesYesYesYesYes
Microsoft SQL Server YesYesYesYesYesYes
Microsoft SQL Server Compact (Embedded Database) NoYesNoNoNoNo
Mimer SQL YesYesYesYesYesNo
MonetDB NoNoYesYesYesYes
MySQL NoYesYesYesYesYes
YesYesYesYesYesYes
Oracle YesYesYesYesYesYes
Oracle Rdb YesYesYesYesYesYes
OpenLink Virtuoso YesYesYesYesYesYes
Pervasive PSQL YesYesYesYesYesNo
Polyhedra DBMS NoNoYesYesYesYes
PostgreSQL YesYesYesYesYesYes
Raima Database Manager NoYesNoNoYesYes
RDM Server NoYesYesNoYesYes
SAP HANA ??????
solidDB YesYesYesYesYesYes
SQL Anywhere YesYesYesYesYesYes
SQLite NoNoYesNoNoYes
Teradata NoYesYesYesYesYes
UniData NoNoYesYesYesYes
UniVerse NoNoYesYesYesYes
Data Domain Cursor Trigger Function Procedure External routine

Note (1):Both functionand procedurerefer to internal routines written in SQL and/or procedural language like PL/SQL. External routinerefers 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.

Note (2):In Derby, H2, LucidDB, and CUBRID, users code functionsand proceduresin Java.

Note (3):ENUM datatype exists. CHECK clause is parsed, but not enforced in runtime.

Note (5):Informix supports external functions written in Java, C, C++.

Partitioning

Information about what partitioning methods are supported natively.

RangeHashComposite (Range+Hash)ListExpressionRound Robin
4th Dimension ??????
ADABAS ??????
Adaptive Server Enterprise YesYesNoYes??
Advantage Database Server NoNoNoNo??
Altibase YesYesNoYes??
Apache Derby NoNoNoNo??
ClustrixDB YesNoNoNoNo?
CUBRID YesYesNoYes??
IBM DB2 YesYesYesYesYes?
Empress Embedded Database NoNoNoNo??
EXASolution NoYesNoNoNo?
Firebird NoNoNoNo??
HSQLDB NoNoNoNo??
H2 NoNoNoNo??
Informix Dynamic Server YesYesYesYesYesYes
Ingres Yes ДаДаДа??
InterBase НетНетНетНет??
СУБД Linter SQL НетНетНетНетНет?
MariaDB ДаДаДаДа??
MaxDB НетНетНетНет??
Microsoft Access (JET)НетНетНетНет??
Microsoft Visual Foxpro НетНетНетНет??
Microsoft SQL Server Дачерез вычисляемый столбецчерез вычисляемый столбецДачерез вычисляемый столбец?
Microsoft SQL Server Compact (встроенная база данных) НетНетНетНет??
Mimer SQL НетНетНетНетНет?
MonetDB ДаНетНетНетДа?
MySQL ДаДаДаДа??
??????
Oracle ДаДаДаДачерез виртуальные столбцы?
Oracle Rdb ДаДа????
OpenLink Virtuoso ДаДаДаДаДа?
Повсеместный PSQL НетНетНетНетНет?
СУБД многогранников НетНетНетНетНет?
PostgreSQL ДаДаДаДаДа?
Raima Database Manager ДаДаДаНет??
Сервер RDM НетНетНетНет??
SAP HANA ДаДаДаДаДа?
solidDB ДаНетНетНет??
SQL Anywhere НетНетНетНет??
SQLite НетНетНетНет??
Teradata ДаДаДаДа??
UniVerse ДаДаДаДа??
ДиапазонХэшСоставной (диапазон + хэш)СписокВыражениеКруглый Робин

Примечание (1): Raima Database Manager 14.0 требует, чтобы прикладные программы выбирали правильный раздел (используя диапазон, хэш или составные методы) при добавлении данных, но функция объединения базы данных позволяет всем разделам быть читать как единую базу данных.

Контроль доступа

Информация о функциях контроля доступа (в стадии разработки).

Собственное сетевое шифрованиеЗащита от перебора Совместимость с корпоративным каталогомПравила сложности пароляПатч-доступЗапуск без привилегийАудитЛимит ресурсовРазделение обязанностей (RBAC )Сертификация безопасностиКонтроль доступа на основе атрибутов (ABAC)
4D Да (с SSL)?Да?ДаДа?????
Adaptive Server Enterprise Да (необязательно; для оплаты)ДаДа (необязательно?)ДаЧастично (требуется регистрация; зависит от продукта)ДаДаДаДаДа (EAL4 +)?
Сервер базы данных Advantage ДаНетНетНетДаДаНетНетДа??
DB2 Да?Да (LDAP, Kerberos...)Да?ДаДаДаДаДа (EAL4 +)?
Встроенная база данных Empress ??НетНетДаДаДаНетДаНет?
EXASolution НетНетДа (LDAP)НетДаДаДаДаДаНет?
Firebird ДаДаДа (доверенная аутентификация Windows)Да (с помощью настраиваемого плагина)Да (без страницы безопасности)ДаДаДаNo??
HSQLDB ДаНетДаДаДаДаНетНетДаНет?
H2 ДаДа?Нет?Да?ДаДаНет?
Informix Dynamic Server Да?Да?ДаДаДаДаДа?Да
СУБД Linter SQL Да (с SSL)ДаДаДа (только длина)ДаДаДаДаДаДаДа
MariaDB Да (SSL)НетДа (с 5.2, но не с Серверы Windows)ДаДаДа???Нет?
Microsoft SQL Server Да?Да (Microsoft Active Directory)ДаДаДаДа (с 2008 г.)ДаДаДа (EAL4 +)?
Microsoft SQL Server Compact (встроенная база данных) Нет (не актуально, только права доступа к файлам)Нет (не актуально)Нет (не актуально)Нет (не имеет значения)ДаДа (доступ к файлам)ДаДаНет??
Mimer SQL ??????Да?Да?Да
MySQL Да (SSL с 4.0)НетДа (с 5.5, но только в коммерческих выпуск)НетЧастично (без страницы безопасности)Да???Да?
Да?Да (Open Directory, LDAP)Нет???????
OpenLink Virtuoso ДаДаДаДа (необязательно)Да (необязательно)ДаДа (необязательно)Да (необязательно)ДаНетДа (необязательно)
Oracle ДаДаДаДа?ДаДаДаДаДа (EAL4 +)?
Pervasive PSQL Да?НетНетДаДаДаНетНетНет?
Многогранная СУБД Да (с SSL. Необязательно)НетНетНетНетДаДаДаДаНет?
PostgreSQL ДаДа (для 9.1)Да (LDAP, Kerberos...)Да (с 9.0 с модулем проверки пароля)ДаДаОграничено, с триггерамиДа ДаДа (EAL1)?
Raima Database Manager НетНетНетНетНетДаНетНетНетНет?
Сервер RDM ДаНетНетНетНетДаДаНетДаНет?
SAP HANA ???????????
solidDB НетНетДаНетНетДаДаНетНетНетНет
SQL Anywhere Да?Да (Kerberos)Да?ДаДаНетДаДа (EAL3 + как Adaptive Server Где угодно)?
SQLite Нет (не актуально, только права доступа к файлам)Нет (не актуально)Нет (не актуально)Нет (не актуально)Частично (без страницы безопасности)Да (доступ к файлам)ДаДаНетНет?
Teradata ДаНетДа (LDAP, Kerberos...)Да?ДаДаДаДаДаДа
Собственное сетевое шифрованиеЗащита от перебораСовместимость с корпоративным каталогомПравила сложности пароляДоступ к исправлениямЗапуск без привилегийАудитОграничение ресурсовРазделение обязанностей (RBAC )Сертификат безопасностиУправление доступом на основе атрибутов (ABAC)

Примечание (1): Сетевой трафик может передаваться безопасным способом (не в виде открытого текста, как правило SSL-шифрование). Точно укажите, является ли опция по умолчанию, включена ли опция или дополнительные модули для покупки.

Примечание (2): Присутствуют опции для установки минимального размера пароля с учетом сложности, такой как наличие чисел или специальных символов.

Примечание (3): Как вы получаете обновления безопасности? Это бесплатный доступ, нужен логин или платить? Есть ли легкий доступ через веб / FTP-портал или RSS-канал или только через автономный доступ (почтовый компакт-диск, телефон).

Примечание (4): Выполняется ли процесс базы данных от имени пользователя root / администратора или непривилегированного пользователя? Какая конфигурация по умолчанию?

Примечание (5): Есть ли отдельный пользователь для управления особыми операциями, такими как резервное копирование (только разрешения для дампа / восстановления), сотрудник службы безопасности (аудит), администратор (добавление пользователя / создание базы данных) и т. Д. ? Это по умолчанию или необязательно?

Примечание (6): Список продуктов, сертифицированных Common Criteria.

Примечание (7): FirebirdSQL, похоже, имеет только пользователя SYSDBA и владельца базы данных. Нет отдельных ролей для оператора резервного копирования и администратора безопасности.

Примечание (8): Пользователь может определить выделенного пользователя резервного копирования, но ничего особенного в установке по умолчанию.

Примечание (9): Методы аутентификации.

Примечание ( 10): Informix Dynamic Server поддерживает PAM и другую настраиваемую аутентификацию. По умолчанию используется проверка подлинности ОС.

Примечание (11): Методы аутентификации.

Примечание (12): С использованием Pervasive AuditMaster.

Примечание (13): Безопасность на основе пользователей является необязательной в Polyhedra, но при включении ее можно расширить до ролевой модели с аудитом.

Базы данных и схемы (терминология)

Спецификация SQL определяет, что такое «схема SQL»; однако базы данных реализуют это иначе. Чтобы усугубить эту путаницу, функциональность может частично совпадать с функциональностью родительской базы данных. Схема SQL - это просто пространство имен в базе данных; вещи в этом пространстве имен адресуются с помощью члена , оператора точка «.». Кажется, это универсальный вариант среди всех реализаций.

Истинный полностью квалифицированный запрос (база данных, схема и таблица) представлен как таковой: SELECT * FROM database.schema.table

И схема, и база данных может использоваться для изоляции одной таблицы «foo» от другой таблицы с таким же именем «foo». Ниже приводится псевдокод:

  • SELECT * FROM database1.foovs. SELECT * FROM database2.foo(нет явной схемы между базой данных и таблицей)
  • SELECT * FROM [database1.] Default.foovs. SELECT * FROM [database1.] Alternate.foo(без явного префикса базы данных)

Возникающая проблема заключается в том, что бывшие пользователи MySQL будут создавать несколько баз данных для одного проекта. В этом контексте базы данных MySQL аналогичны по функциям схемам PostgreSQL, поскольку в PostgreSQL отсутствуют стандартные функциональные возможности кросс-баз данных, которые есть в MySQL. И наоборот, PostgreSQL применил больше спецификаций, реализующих кросс-таблицу, кросс-схему, а затем оставил место для будущей кросс-базы данных.

Схема псевдонимов MySQL с скрытой базой данных, например, CREATE SCHEMAи CREATE DATABASEявляются аналогами. Таким образом, можно сказать, что MySQL реализовал функциональность кросс-базы данных, полностью пропустил функциональность схемы и предоставил аналогичную функциональность в своей реализации базы данных. Таким образом, PostgreSQL полностью поддерживает схемы, но ему не хватает некоторых функций MySQL с базами данных, в то время как MySQL даже не пытается поддерживать стандартные схемы.

У Oracle есть собственный подход, в котором создание пользователя синонимично созданию схемы. Таким образом, администратор базы данных может создать пользователя с именем PROJECT, а затем создать таблицу PROJECT.TABLE. Пользователи могут существовать без объектов схемы, но объект всегда связан с владельцем (хотя этот владелец может не иметь привилегий для подключения к базе данных). Благодаря архитектуре «shared-everything» Oracle RAC одна и та же база данных может быть открыта несколькими серверами одновременно. Это не зависит от репликации, которая также может использоваться, когда данные копируются для использования различными серверами. В реализации Oracle «база данных» - это набор файлов, содержащих данные, а «экземпляр» - это набор процессов (и памяти), через которые осуществляется доступ к базе данных.

Informix поддерживает несколько баз данных в экземпляре сервера, например MySQL. Он поддерживает синтаксис CREATE SCHEMAкак способ группировки операторов DDL в единый блок, создавая все объекты, созданные как часть схемы, как одного владельца. Informix поддерживает режим базы данных, называемый режимом ANSI, который поддерживает создание объектов с одинаковыми именами, но принадлежащих разным пользователям.

PostgreSQL и некоторые другие базы данных недавно добавили поддержку внешних схем, то есть возможность импортировать схемы с других серверов, как определено в ISO / IEC 9075-9 (опубликовано как часть SQL: 2008 ). Это похоже на любую другую схему в базе данных в соответствии со спецификацией SQL при доступе к данным, хранящимся либо в другой базе данных, либо в другом экземпляре сервера. Импорт может быть выполнен либо как целая внешняя схема, либо как отдельные таблицы, принадлежащие этой внешней схеме. В то время как поддержка ISO / IEC 9075-9 устраняет разрыв между двумя конкурирующими философиями, окружающими схемы, MySQL и Informix поддерживают неявную связь между базами данных, в то время как ISO / IEC 9075-9 требует, чтобы любые такие связи были явными по своей природе.

См. Также
Ссылки
Внешние ссылки
В Викиучебниках есть книга на следующие темы: Справочник по диалектам SQL
Последняя правка сделана 2021-05-15 08:05:12
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте