Common SQL Parameters - 11.x

Common SQL Parameters - 11.x

On this page

Description

Macros that run SQL scripts and display results in the form of a table share common capabilities as described below. A JavaScript enabled browser is required to enable most of these capabilities.

In the macro editor window, all these common capabilities are logically grouped into various tabs based on the functionality for easy access and styling.

  • SQL settings:

    • SQL statement: Allows you to select the data source profile for a database and run SQL statements in the editor. Select the Data source profile for your SQL database and enter the query in the SQL statement editor. There is no limit to the number of statements you can run.

    • SQL script: Allows you to read and run SQL statements from external sources like attachments, files, or templates on your Confluence instance. Advanced capabilities will enable you to combine the outputs from the script and macro body.

    • Parameters: Allows you to create a set of optional data parameters to refine your statement. Parameters apply to your SQL statements during runtime. Simply enter the number of parameters you want to create in the Start with parameter (s) field and click + Add a parameter (s) to define the parameters. You can define multiple parameters by clicking + Add value; there is no limit to the number of parameters you can add.

    • Runtime: Allows you to specify additional conditions that apply to a SQL script during execution.

Selecting a value in the macro overrides the default value set by an Administrator. The order of overriding the default setting is:

Macro level parameter > Profile configuration > Global configuration.

  • Display settings:

    • Data layout: Allows you to define how the output for a SQL script is presented. 

    • Advanced formatting: Allows you to define advanced settings like expanding array fields, SQL query, etc. in the output.

Common SQL parameters

The following parameters are available on all SQL macros. Some parameters may have values that are restricted by your administrator for security or operational reasons.

Tabs

Macro Editor Label

Default

Description

Parameter

Tabs

Macro Editor Label

Default

Description

Parameter

SQL settings

SQL statement

Data source profile



Specify the data source name. It represents an application server defined data source (Pro Edition) or data source profile defined by your administrator. This is a required field and some of the data sources may be restricted.

dataSource 



SQL statement



Use the available select lists to select the tables, views, and respective columns, and add them to your SQL statement. You can:

  • Build simple queries by selecting the tables, views, and/or columns, and clicking the add icon, or

  • Enter your own SQL statement and add tables, views, and columns from the select lists wherever required in the query, or

  • Add additional SQL scripts from the SQL script tab

The tables, views, and columns in the select lists are loaded based on the Data source profile selected. There is no limit to the number of statements you can run.

  • This parameter is not available in SQL File macro.

  • The ability to add required tables and columns from the select lists to your SQL query, is added in the SQL 10.1 release.

  • At times, these select lists might take a while to load. This can be because of your network connectivity or a large number of tables in the selected data source. Note that this delay occurs only the first time you connect to a data source. Once retrieved, data is cached until one hour, which is the default cache expiry time.

  • When you add a new table or alter an existing table in any data source (using SQL macro), the changes might not be reflected in the select lists immediately, because the data before changes is cached for one hour. You can either:

    • contact your Administrator to flush the respective cache in the Cache Management page, to see the updates immediately, or

    • wait for the select lists to load once the cache is cleared and the latest updates are retrieved.



SQL script

Method of locating script

None















Specifies the list of options where SQL scripts are located. The results will be based on the scripts present in the selected location.

  • Attachment - The script is read from the list of options selected for the following parameters:

    • Space - Lists all available spaces.

    • Page - Lists all the pages available from the selected space.
      The following options indicate:

      • @self - current space or page

      • @home - homepage of current space

      • @parent - parent page of current page or space

  • Template - Scripts is read from a global page template specified in the 'Name of the template' field. 

 Special note: How to deal with templates on Confluence 4.3 and later.

  • Filename - The script is read from the input specified in the 'File name' field. You can specify the file located in confluence home directory/script/filename, also subdirectories.

  • File encoding - Encoding for an external file if different from the system default handling. Default file encoding is UTF8.

script

Parameters

p1 through pn



Click + Add parameter (s) to create a set of optional data parameters to refine your SQL statements during runtime.

Each parameter field allows you to create a set of optional data parameters to refine your query. Parameters apply to your SQL statements during runtime. Simply enter the number of parameters you want to create in the Start with parameter (s) field and click + Add parameter (s) to define the parameters. You can define multiple parameters by clicking + Add value; there is no limit to the number of parameters you can add.

For example,

select * from example where name = ? or  department = ?



Values for SQL parameter markers identified by "?" in SQL statements. On untrusted sites, prevent SQL injection attacks by using parameter markers. This is only necessary when the SQL statements are partially constructed from user input. Wiki markup SQL macros support an arbitrary number of parameter markers. An arbitrary number of parameter markers can be provided when using the wiki markup version of the SQL macro. See Wikipedia: SQL injection.



Runtime






Auto commit SQL statements

On

Wikipedia: Autocommit or see your database documentation.

autoCommit

Transaction isolation level 

Default

Most DBMSs offer a number of transaction isolation levels, which control the degree of locking that occurs when selecting data. You can select among a list of 5 kinds of transaction isolation levels:

  • Read committed

  • Read uncommitted

  • Repeatable read

  • Serializable: This is the highest isolation level.

  • None: Skips adding any controls while your data is being selected. 

To know more about what you can do with each type, refer to Wikipedia: Isolation or See your database documentation.

  • The default transaction isolation level is set by the administrator via the Global configuration page.

  • Selecting a value from the list overrides the default. 

  • Database and JDBC drivers should support the selected transaction isolation level.

transactionIsolation

Maximum number of rows to retrieve and display

Default

Specify the upper limit for the number of rows your SQL query returns. Administrators can configure the limit.

  • The default value is set by the administrator via the Global configuration page or Profile configuration page.

  • Selecting a value from the list overrides the default. The order of overriding the default setting is:

    • Macro level parameter > Profile configuration > Global configuration.

  • Administrators can prevent overriding the Limit rows processed parameter and enforce the default value set on the Global configuration page by enabling the Restrict overriding global configuration limits flag. Refer to Get Started - Configuration - 11.x.

limit

Maximum number of seconds for query to run 

Default

Time in seconds that a query runs before a forced timeout. The default value is set by your Confluence administrator in the global configuration for SQL for Confluence. Since 5.1.

  • The default value is set by the administrator via the Global configuration page or Profile configuration page.

  • Selecting a value from the list overrides the default. The order of overriding the default setting is Macro level parameter > Profile configuration > Global configuration.

  • To know more about how the queryTimeout parameter value is evaluated, refer to the scenario illustrations page Limit query time - 11.x.

  • Your database and JDBC driver must support the selected value to use this parameter.

  • This parameter can be managed by Macro Security for Confluence App.

  • Administrators can prevent overriding the Limit query time parameter and enforce the default value set on the Global configuration page by enabling the Restrict overriding global configuration limits flag. Refer to Get Started - Configuration - 11.x.

queryTimeout

Render wiki markup macros in body 

Off

If requested, the body will be rendered to expand wiki markup macros. The rendered macros must produce valid SQL syntax. This is useful to run macros from Scripting for Confluence or similar that can produce SQL output.

macros

Display settings

Data layout



Output format

html

Specifies how the output is formatted:

  • HTML - Generates HTML from the result set. Data is HTML encoded unless data encoding is disabled.

  • XHTML (Pro Edition) - Generates and renders XHTML from the result set. Data is HTML encoded unless encoding has been disabled (disableAntiXss).

  • Wiki - Generates and renders wiki markup from the result set. If the data contains unintended wiki markup characters, set the escape parameter On.

  • unrenderedWiki (Pro Edition) - Generates wiki markup from the result set, similar to wiki, without rendering. Wraps with a table-plus macro suitable for copying to another system.

output

Display rows vertically or horizontally

vertical

Note that most of the styling, formatting, sorting, auto, and similar parameters are applicable to only the vertical orientation setting.

rowOrientation

Show results as a table

On

Turn this toggle on to produce single values that you want to include in the text.

table

Use database column labels

Off

Choose whether to use a column name or column label for a row header.

columnLabel

Show number of rows updated

Off

For update SQL, determines whether or not to show the number of rows updated as a result of the operation.

showUpdateCount

Show error if there are no rows

Off

A ResultSet with no rows may indicate an error. Use this parameter to control what should happen in this case. A non-blank message must be available (noDataMessage).

noDataError

Text to display when there are no rows



Use @default to show a default error message. The message in this field is displayed only if Show results as a table is selected.

noDataMessage

Advanced formatting






Show generated wiki markup

Off

When the output is wiki-based, choose this option to show the generated wiki markup.

showWiki

Escape special wiki characters

Off

When the output is wiki-based, choose this option to escape special characters in wiki markup. Use this to prevent unintended wiki characters from interfering with table formatting.

escape

Convert null fields to blank

On

Use this parameter to avoid displaying null values in the column.

convertNull

Stop encoding HTML characters

Off

If the SQL is producing HTML, this parameter needs to be selected (On). User must be authorized (via global app configuration or by more fine-grained control using Macro Security for Confluence) to use this option due to security considerations.

disableAntiXss

Expand array fields

On

For vertical row orientation, array fields can be expanded to one entry per line.

expandArray

Show SQL

Off

Displays SQL in a code macro.

showSql

Options for showing SQL code



Since 6.4. A comma-separated list of code or code-pro (Code Pro Macro) parameters used when Show SQL is selected. This allows for customization of how the SQL code is shown. See How to improve the display of SQL source.

showSqlOptions

Need support? Create a request with our support team.

Copyright © 2005 - 2025 Appfire | All rights reserved.