docs/content/product/data-modeling/sql-runner.mdx
The SQL Runner is a tool that allows you to execute SQL queries from Cube Cloud on your data source or Cube Store. It can be used to inform the development of the data model, for ad-hoc querying as well as debugging SQL queries generated by Cube to execute against the data source.
<InfoBox>Available on all plans.
</InfoBox> <video width="100%" controls> <source src="https://ucarecdn.com/8cbdd639-e86b-4190-bbaa-37122c39bc01/video.mp4" type="video/mp4" /> </video>To execute a query, enter the SQL query in the text area under SQL Editor and click <Btn>▶ Run</Btn>. The query results will be displayed under Results, along with the row count and query execution time:
<Screenshot highlight="inset(12% 2% 1% 41% round 10px)" src="https://ucarecdn.com/2f910abf-5b94-43cd-87f8-14c86bd98f77/" />
SQL Runner can run queries against configured data sources, which is helpful for diagnosing database-specific issues.
<InfoBox>In order for an additional data source to show up in SQL Runner, it needs to be the data source in at least one cube definition.
</InfoBox>It can also run queries against Cube Store, which is useful for testing pre-aggregations directly to see if they return expected results.
You can switch data source(s) by clicking the dropdown under <Btn>Data Source</Btn>:
<Screenshot highlight="inset(25% 60% 53% 6% round 10px)" src="https://ucarecdn.com/5bd43e2c-c8e6-4300-a89b-036398e92175/" />
The SQL Runner also allows executing queries against configured data
sources using a specific security context, which is
particularly convenient for debugging queries in a multi-tenant
configuration. The SQL Runner can be
configured to use predefined security contexts from
scheduledRefreshContexts in the cube.js
configuration file, or a custom context can be provided as a JSON string.
Specifying a security context is optional, and if none is provided, the query will be executed with the default security context. If one is provided, then the Schema Explorer will reload to reflect the data source available to the security context.
If you have configured
scheduledRefreshContexts in your deployment,
you can choose a context to execute the query with. Click the dropdown under
Security Context, then use the <Btn>Scheduled Refresh Contexts</Btn> tab to
select an existing context:
The SQL Runner also allows providing an ad-hoc security context as a JSON string. From the same dropdown under Security Context, click the <Btn>Custom Context</Btn> tab and enter a valid JSON string and click <Btn>Apply</Btn>:
<Screenshot src="https://ucarecdn.com/955fa2c7-31c5-459e-adfb-498fbaf7bbb6/" />The Schema Explorer allows you to view details of the data source's schema,
including tables and their columns and types. This is useful for ensuring that
properties of data models match the underlying schema (i.e. a number property
in a data model should be a numeric).
<Screenshot highlight="inset(37% 60% 0% 6% round 10px)" src="https://ucarecdn.com/c2735f7c-d5e7-4b6b-903b-8d0db07b668e/" />