SQLPage documentation

The two most important concepts in SQLPage are components and parameters. This page documents all the components that you can use in SQLPage and their parameters. Use this as a reference when building your SQL application.

components

alert
A visually distinctive message or notification.
card
A grid where each element is a small card that displays a piece of data.
chart
A component that plots data. Line, area, bar, and pie charts are all supported. Each item in the component is a data point in the graph.
csv
A button that lets the user download data as a CSV file. Each column from the items in the component will map to a column in the resulting CSV.
datagrid
Display small pieces of information in a clear and readable way. Each item has a name and is associated with a value.
dynamic
A special component that can be used to render other components, the number and properties of which are not known in advance.
form
A series of input fields that can be filled in by the user. The form contents can be posted and handled by another sql file in your site. The value entered by the user in a field named x will be accessible to the target SQL page as a variable named $x. For instance, you can create a SQL page named "create_user.sql" that would contain "INSERT INTO users(name) VALUES($name)" and a form with its action property set to "create_user.sql" that would contain a field named "name"."
hero
Display a large title and description for your page, with an optional large illustrative image. Useful in your home page, for instance.
http_header
An advanced component that can be used to create redirections, set a custom caching policy to your pages, or set any HTTP header. If you are a beginner, you probably don't need this component. When used, this component has to be the first component in the page, because once the page is sent to the browser, it is too late to change the headers. Any valid HTTP header can be used as a top-level parameter for this component. HTTP headers are additional pieces of information sent with responses to web requests that provide instructions or metadata about the data being sent — for example, setting cache control directives to control caching behavior or specifying the content type of a response.
list
A vertical list of items. Each item can be clickable and link to another page.
shell
Personalize the "shell" surrounding your page contents. Used to set properties for the entire page.
steps
Guide users through multi-stage processes, displaying a clear list of previous and future steps.
table
A table with optional filtering and sorting. Unlike most others, this component does not have a fixed set of item properties, any property that is used will be rendered directly as a column in the table.
text
A paragraph of text. The entire component will render as a single paragraph, with each item being rendered as a span of text inside it, the styling of which can be customized using parameters.

The "chart" component

A component that plots data. Line, area, bar, and pie charts are all supported. Each item in the component is a data point in the graph.

Top-level parameters

type

REQUIRED. The type of chart: "line", "area", "bar", "column", or "pie".

labels

Whether to show the data labels on the chart or not.

logarithmic

Display the y-axis in logarithmic scale..

stacked

Whether to cumulate values from different series.

time

Whether the x-axis represents time. If set to true, the values will be formatted as dates for the user.

title

The name of the chart.

ymax

The maximum value for the y-axis.

ymin

The minimal value for the y-axis.

Row-level parameters

x

REQUIRED. The value of the point on the horizontal axis

y

REQUIRED. The value of the point on the vertical axis

label

An alias for parameter "x"

series

If multiple series are represented and share the same y-axis, this parameter can be used to distinguish between them.

value

An alias for parameter "y"

Example 1

A pie chart.

SELECT 
    'chart' as component,
    'Answers' as title,
    'pie' as type,
    1 as labels;
SELECT 
    'Yes' as label,
    65 as value;
SELECT 
    'No' as label,
    35 as value;

Result

Answers

Loading...

Example 2

An area chart

SELECT 
    'chart' as component,
    'Syracuse' as title,
    'area' as type;
SELECT 
    0 as x,
    15 as y;
SELECT 
    1 as x,
    46 as y;
SELECT 
    2 as x,
    23 as y;
SELECT 
    3 as x,
    70 as y;
SELECT 
    4 as x,
    35 as y;
SELECT 
    5 as x,
    106 as y;

Result

Syracuse

Loading...

Example 3

A bar chart with multiple series.

SELECT 
    'chart' as component,
    'Expenses' as title,
    'bar' as type,
    1 as stacked;
SELECT 
    'Marketing' as series,
    2021 as x,
    35 as value;
SELECT 
    'Marketing' as series,
    2022 as x,
    15 as value;
SELECT 
    'Human resources' as series,
    2021 as x,
    30 as value;
SELECT 
    'Human resources' as series,
    2022 as x,
    55 as value;

Result

Expenses

Loading...