Поиск по сайту:
Как он портит все, что украдет! (Ф. Вольтер).

Выпущен MySQL 9.2, добавляющий транзакционный API JavaScript

23.01.2025
Выпущен MySQL 9.2, добавляющий транзакционный API JavaScript

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

В MySQL 9.2.0 появилась новая привилегия CREATE_SPATIAL_REFERENCE_SYSTEM, которая позволяет пользователям выполнять такие операторы, как «CREATE SPATIAL REFERENCE SYSTEM», «CREATE OR REPLACE SPATIAL REFERENCE SYSTEM» и «DROP SPATIAL REFERENCE SYSTEM».

Однако при выполнении этих команд без этой привилегии (или привилегии SUPER) возникает ошибка. Хотя привилегию SUPER по-прежнему можно использовать для выполнения этих команд, разработчикам следует считать такое использование устаревшим и соответствующим образом планировать переход.

Что касается библиотек JavaScript, то компонент многоязычного движка MySQL (MLE) теперь поддерживает библиотеки JavaScript многократного использования, что упрощает обмен функциями JavaScript и управление ими в разных хранимых программах. Другими словами, теперь вы можете эффективно организовывать свой код в модули многократного использования с помощью операторов CREATE LIBRARY и DROP LIBRARY.

Кроме того, библиотеки JavaScript можно включать в другие хранимые программы с помощью нового предложения USING в «CREATE FUNCTION» или «CREATE PROCEDURE». Более того, в MySQL 9.2.0 есть удобный оператор «SHOW CREATE LIBRARY» для получения кода существующих библиотек, а также две новые таблицы информационной схемы — LIBRARIES и ROUTINE_LIBRARIES — для отслеживания и управления этими ресурсами JavaScript.

Читать  Удаление программистов ядра Linux: объяснены требования к соответствию

Компонент MLE расширяет возможности, позволяя программам JavaScript вызывать хранимые в MySQL функции, процедуры и пользовательские переменные сеанса. Теперь JavaScript может вызывать функции или процедуры MySQL с помощью таких методов, как getFunction() и getProcedure().

Также стоит отметить, что теперь к переменным сеанса можно получить прямой доступ через глобальный объект Session в JavaScript. В версии 9.2 также реализован прямой доступ к встроенным функциям MySQL, таким как rand()sleep()uuid() и isUUID() через глобальный объект Mysql.

Поддержка транзакций — ещё одно интересное дополнение: MySQL 9.2 предоставляет транзакционный API на JavaScript, который соответствует стандартным командам SQL в MySQL, таким как START TRANSACTIONCOMMITROLLBACK и SET AUTOCOMMIT. Также включены точки сохранения. В дополнение к функциям транзакций предоставляется объект SqlError, обеспечивающий надёжную обработку ошибок в программах на JavaScript.

Типы данных ENUM и SET в MySQL теперь распознаются в хранимых процедурах JavaScript, что позволяет легко преобразовывать их друг в друга. Если ваше приложение использует эти типы, теперь вы можете работать с ними напрямую в JavaScript без сложных преобразований.

В MySQL 9.2 в выводе EXPLAIN FORMAT=JSON появляется информация о версии формата, если для системной переменной «explain_json_format_version» установлено значение 2. Это дополнение помогает разработчикам различать разные форматы вывода JSON и соответствующим образом адаптировать инструменты или скрипты. Если версия формата равна 1, в результате EXPLAIN отсутствует информация о версии для обеспечения совместимости со старыми процессами.

Читать  OpenStreetMap теперь работает в Debian

Помимо новых дополнений, упомянутых выше, в MySQL 9.2 несколько функций помечены как устаревшие. Оператор FLUSH PRIVILEGES, который долгое время использовался для перезагрузки таблиц разрешений, теперь устарел. Плагин Version Tokens также будет удалён в следующем выпуске.

В то же время в новой версии полностью удалены некоторые элементы, ранее доступные в версии 9.1, поэтому разработчикам следует учитывать их отсутствие при обновлении или репликации. Например, ключевое слово BINLOG больше нельзя использовать без кавычек в хранимых процедурах.

Для получения более подробной информации ознакомьтесь с примечаниями к выпуску или здесь, чтобы узнать обо всех новинках MySQL 9.2.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
Поделиться в соц. сетях:


0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

Это может быть вам интересно


Рекомендуемое
Сегодня проект GNOME выпустил GNOME 46.8 в качестве восьмого обновления…

Спасибо!

Теперь редакторы в курсе.