Documentation / The IDE

Database

Database client for Oracle, SQL Server, MySQL, MariaDB, MongoDB and SQLite, with a SQL and PL/SQL console, execution plans and code ↔ database navigation.

Yuli comes with a built-in database client. Open it from the left rail, Database button (Alt+Shift+D).

Supported engines

Engine Requirement
Oracle Oracle Instant Client 19c or later (Basic or Basic Light) on the PATH.
SQL Server Nothing extra.
MySQL Nothing extra.
MariaDB Nothing extra.
MongoDB Nothing extra.
SQLite Nothing extra.

PostgreSQL is not supported for now.

If Oracle Instant Client is missing, Yuli shows “Connecting to Oracle requires Oracle Instant Client” with the steps for your system.

Create a connection

  1. In the Database panel, click New connection.
  2. Choose the engine and fill in the server details.
  3. Assign an Environment (for example, development or testing).
  4. Check Read-only if you don't want to allow writes.
  5. Set the Agent access. See Secure database.
  6. Click Test connection and save.

The password is stored in the system keychain, never in the project. For internal servers with their own certificate, check Trust the server certificate.

Schema explorer

  • Tables, views, packages, functions, procedures and triggers.
  • Source code of packages, views, functions and triggers.
  • PL/SQL dependencies and their flow.
  • ER diagram of the tables.

SQL and PL/SQL console

Open one with Tools → New SQL query (Ctrl+Alt+Q).

  • Autocomplete against the real schema.
  • PL/SQL blocks.
  • Execution plan as a tree, with warnings.
  • Full results exportable to CSV or Excel.

The console is limited to 500 rows by default, expandable up to 100,000.

Code ↔ database

  • Ctrl+Alt+J goes from the code to the database object: function, package or table.
  • The Code ↔ DB diagram, under Diagrams, shows which DAOs and repositories call which functions, packages and tables.
  • In Hibernate mappings, Yuli validates tables and columns against the connection.

Debug PL/SQL

Yuli debugs Oracle PL/SQL code with DBMS_DEBUG. It requires the DEBUG CONNECT SESSION privilege and objects compiled with COMPILE DEBUG. See Run and debug.

Migrations

The Migrations button manages the project's migration scripts. For the agent, migrations and .sql files raise the risk level and require confirmation.

With the agent

The agent uses the database through Yuli's tools, never through command-line clients:

Tool What it does Requires
yuli_db_schema Reads the schema and the source code. Queries only
yuli_db_query Runs a SELECT with a row limit. Queries only
yuli_db_execute Runs statements that write. Super permissions and your approval

Ask it things like:

  • “Why does this function return NULL with these parameters?”
  • “Explain what the PKG_ORDERS.CLOSE procedure writes.”
  • “Align the Order entity with the table's real columns.”