Spec-Zone.ru › MySQL Connectors 1.0

3.5 Автоматическое выполнение кода в MySQL Shell

При использовании X DevAPI в языке программирования, полностью определяющем синтаксис, например, при выполнении SQL-запросов через сеанс X DevAPI или работе с операциями CRUD, фактическая операция выполняется только при вызове функции execute(). Например:

var result = mySession.sql('show databases').execute()
var result2 = myColl.find().execute()

Вызов функции execute() выше вызывает выполнение операции и возвращает объект Result. Возвращённый объект Result затем присваивается переменной, и присвоение является последней выполненной операцией, которая не возвращает данных. Такие операции также могут возвращать объект Result, который используется для обработки информации, возвращённой из операции.

В качестве альтернативы, MySQL Shell предоставляет следующие удобства, упрощающие работу с X DevAPI интерактивно:

  • Автоматическое выполнение операций CRUD и SQL.

  • Автоматическая обработка результатов.

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

Автоматическое выполнение кода

Если MySQL Shell обнаруживает, что операция CRUD, готовая к выполнению, была возвращена, он автоматически вызывает функцию execute(). Повторение приведённого выше примера в MySQL Shell и удаление операции присвоения показывают, что операция выполняется автоматически.

mysql-js> mySession.sql('show databases')
mysql-js> myColl.find()

MySQL Shell выполняет SQL-операцию, и, как указано выше, после выполнения этой операции возвращается объект Result.

Автоматическая обработка результатов

Если MySQL Shell обнаруживает, что будет возвращён объект Result, он автоматически обрабатывает его, выводя данные результата в наиболее подходящем формате. Существуют различные типы объектов Result, и формат меняется для каждого из них.

mysql-js> db.countryInfo.find().limit(1)
[

    {

        "GNP": 828,

        "IndepYear": null,

        "Name": "Aruba",

        "_id": "ABW",

        "demographics": {

            "LifeExpectancy": 78.4000015258789,

            "Population": 103000

        },

        "geography": {

            "Continent": "North America",

            "Region": "Caribbean",

            "SurfaceArea": 193

        },

        "government": {

            "GovernmentForm": "Nonmetropolitan Territory of The Netherlands",

            "HeadOfState": "Beatrix"

        }

    }

]

1 document in set (0.00 sec)

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/x-devapi-userguide-en/shell-automatic-code-execution-results.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API