Особенности MariaDB, недоступные в SQL Server
Некоторые функции MariaDB недоступны в SQL Server.
На первый взгляд, неважно знать об этих функциях при миграции из SQL Server в MariaDB. Однако это не так. Использование функций MariaDB, которых нет в SQL Server, позволяет получить больше преимуществ от миграции, извлекая максимальную пользу из MariaDB.
На этой странице представлен список функций MariaDB, которые не поддерживаются в SQL Server. Список не является исчерпывающим.
Архитектура плагинов
- Системы хранения данных.
- Плагины аутентификации.
- Плагины шифрования.
- ColumnStore — это колоночная система хранения данных, разработанная для горизонтального масштабирования. Она работает на определенной версии MariaDB, поэтому в настоящее время она не может использоваться в сочетании с другими системами хранения.
SQL
- Переменная sql_mode определяет, в каких случаях оператор SQL должен завершаться с ошибкой, а в каких случаях он должен завершаться с предупреждением, даже если он не полностью корректен. Например, когда оператор пытается вставить строку в столбец, который недостаточно велик для ее хранения, он может завершиться с ошибкой или вставить усеченную строку и выдать предупреждение. Это компромисс между надежностью и гибкостью.
- SQL_MODE=MSSQL позволяет использовать небольшой подмножество проприетарного синтаксиса SQL Server.
- Параметры
CREATE ... IF EXISTS,CREATE OR REPLACE,DROP ... IF NOT EXISTSподдерживаются для большинства операторов DDL. - Операторы SHOW.
- Операторы SHOW CREATE.
- Операторы SHOW PROCESSLIST и PERFORMANCE_SCHEMA THREAD table предоставляют гораздо более подробную информацию по сравнению с процедурами SQL Server
sp_who()иsp_who2(). - Оператор CHECKSUM TABLE.
- Поддержка PL/SQL (только для хранимых процедур и хранимых функций).
- Конструкторы строк.
-
BEFOREТриггеры. - Операторы HANDLER для прокрутки строк таблицы, отсортированных по индексу или в их физическом порядке.
- Оператор DO для вызова функций без возвращения набора результатов.
- Функция BENCHMARK() для измерения скорости выражения SQL.
См. также Различия в синтаксисе между MariaDB и SQL Server.
Типы данных
- Наборы символов и кодировки не зависят от типа столбца. Их можно задать глобально или на уровне базы данных, таблицы или столбца.
- Столбцы могут использовать неконстантные выражения в качестве значения по умолчанию. Столбцы типа TIMESTAMP могут иметь значение
DEFAULT. - Незнаковые числовые типы.
- Динамические столбцы (обратите внимание, что JSON обычно предпочтительнее этой функции).
См. также Сравнение типов данных SQL Server и MariaDB.
JSON
Для совместимости с некоторыми другими системами баз данных MariaDB поддерживает псевдотип JSON. Однако он является просто псевдонимом для:
LONGTEXT CHECK (JSON_VALID(column_name))
JSON_VALID() — эквивалент SQL Server's ISJSON().
Функциональные возможности
- Функция отката позволяет "отменить" изменения, произошедшие после определенной точки во времени.
-
Разделенные таблицы поддерживают следующие функции:
- Таблицы можно разделять по нескольким столбцам.
- Доступны различные типы разделения.
- Подразделения.
- Отчет о ходе выполнения для некоторых обычно дорогостоящих операторов.
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/mariadb-features-not-available-in-sql-server/