The Bold BI Dashboard Designer supports connecting MySQL database using SQL Query (C# API).
Supported Server Versions: MySQL (5.1, 5.5, 5.6, 5.7, and 8.0)
To configure the MySQL data source, follow these steps:
Click Data Sources in the configuration panel to add a new data connection.
Click CREATE NEW to launch a new connection from the connection panel.
Select the MySQL connection in the connection panel.
NOTE: You can also create a data source from the home page by clicking the Data Sources menu from left menu panel and Create Data Source from the data sources page.
After clicking a data source, the NEW DATA SOURCE configuration panel opens. Follow the given steps to create a MySQL data source:
Enter a name and description (optional) for the data source.
Enter a valid MySQL server or host name in the Server Name text box.
Enter a valid MySQL user name in the User Name text box.
Enter a valid MySQL password in the Password text box.
Select a database you want to query in the listed database associated with the given MySQL Server in the database combo box.
To connect MySQL with a particular table, enter the property currenttable={tablename} or specifictable={tablename} in the Additional connection parameters text box. The tables can be separated by comma {table1,table2} to connect with multiple tables.
NOTE: To connect data source with SSH, enable the SSH check box in the NEW DATA SOURCE configuration panel and enter the required credentials.
There are two connection types available in a data source:
* Live mode
* Extract mode
In this connection type, a data source is directly fetched from source. Choose the Live mode option for this connection.
The schema represents the collection list retrieved from the MySQL server. This dialog displays a list of schemas in treeview and their corresponding values.
If the table name is provided in the Additional connection parameters text box, only the specified table will be listed.
Now, the data design view page with the selected table schema opens. Drag and drop the table.
You can use the Code View options for passing query to display data.
Click Save to save the data source with a relevant name.
In this connection type, a data source is fetched from source periodically. Choose the Extract mode option for this connection.
NOTE: Initially, data will be extracted based on the Max Rows selected in order to proceed with data model creation. The remaining records (there is no limit) will be extracted during the next refresh.
Click Refresh Settings in the configuration panel.
Select the recurrence type, recurrence start and end dates in the Refresh Setting dialog box.
Click Connect to connect the MySQL server with configured details.
The Extract Data dialog opens. This dialog has two modes of connection either via Table or Custom query.
Under custom query option, write the required query and click Connect.
Incremental Update can be performed in both tables and views.
Under the Table option, This dialog displays list of tables and views in treeview. Select the required table(s) or view(s) from treeview to use in the designer. The option is available for configuring incremental refresh column for the selected items in the right side panel.
If you configured it, then the data source will work on Incremental update, otherwise works on Full load concept. And finally click Connect.
If the table name is provided in the Additional connection parameters text box, only the specified table will be listed for selection.
Now, the data design view page with the selected table schema opens. Drag and drop the table.
You can use the Code View options for passing query to display data.
Click Save to save the data source with a relevant name.
NOTE: In future, you can edit the connection information for both Live and Extract mode connections using the Edit Connection option.
Supported Server Versions: MySQL (5.1, 5.5, 5.6, 5.7, and 8.0)
Type while creating the data source needs to be mysql.
Through the REST API, only the live mode data source can be created and edited.
Parameters | Details |
---|---|
Servername required | `string` Server name or Host name of the connection |
Port required | `string` Port number used to connect to the mysql server. |
Username required | `string` A valid username for the connection |
Password required | `string` A valid Password for the connection |
Database required | `string` database which needs to be connected |
Schemaname required for table mode | `string` Enter a valid Schemaname |
Tablename required for table mode | `string` Enter a valid Tablename |
Query required for code view mode | `string` Enter a valid Query |
AdvancedSettings optional | `string` Additional optional connection parameters can be provided. By default, it is empty. |
CommandTimeout optional | `string` Enter a valid Timeout for connection. By default, it is 300 |
IsSshConnection optional | `boolean` Enable or disable SSH. By default, it is false. |
SshServerName optional | `string` Enter a valid Ssh Server name. By default, it is empty. |
SshPort optional | `integer` Enter a valid Ssh Port number. |
SshUserName optional | `string` Enter a valid Ssh Username. By default, it is empty. |
SshPassword optional | `string` Enter a valid Ssh Password. By default, it is empty. |
Expressions optional | `Array of Objects` |
Parameters | Details |
---|---|
Name required | `string` Name of the Expression |
Expression required | `string`
Expression
|
NOTE: For editing Data Source via API. All the parameters are optional. The parameter which needs to be changed can be provided.
Parameters | Details |
---|---|
Name required | `string` Name of the Expression |
Expression required | `string`
Expression
|
Action optional | `string` add/delete/edit By default, it is add. |
NewName optional | `string` For renaming the expression. This is applicable only if the Action is edit |
"Connection":
{
"Servername": "string",
"Port": "string",
"Username": "string",
"Password": "string",
"Database": "string",
"Schemaname": "string",
"Tablename": "string",
"AdvancedSettings": "string",
"CommandTimeout": "string",
"IsSshConnection": "false",
"SshServerName": "string",
"SshPort": 0,
"SshUsername": "string",
"SshPassword": "string",
"Expressions" : [{
"Name": "Expression1",
"Expression" : "SUM(numeric expression)"
},
{
"Name": "Expression2",
"Expression" : "UPPER(string expression)"
}]
}
"Connection":
{
"Servername": "string",
"Port": "string",
"Username": "string",
"Password": "string",
"Database": "string",
"Schemaname": "string",
"Tablename": "string",
"AdvancedSettings": "string",
"CommandTimeout": "string",
"IsSshConnection": "false",
"SshServerName": "string",
"SshPort": 0,
"SshUsername": "string",
"SshPassword": "string",
"Expressions" : [{
"Name": "Expression1",
"Expression" : "SUM(numeric expression)",
"NewName" : "Sum",
"Action": "edit"
},
{
"Name": "Expression2",
"Expression" : "UPPER(string expression)"
"Action": "delete"
}]
}
NOTE: Through Rest API, the data source can be created or edited with only one table. If different table is provided in edit data source, the table will be replaced. The widgets will be retained only if the schema is same as the previous table.
"Connection":
{
"Servername": "string",
"Port": "string",
"Username": "string",
"Password": "string",
"Database": "string",
"Query": "string",
"AdvancedSettings": "string",
"CommandTimeout": "string",
"IsSshConnection": "false",
"SshServerName": "string",
"SshPort": 0,
"SshUsername": "string",
"SshPassword": "string",
"Expressions" : [{
"Name": "Expression1",
"Expression" : "SUM(numeric expression)"
},
{
"Name": "Expression2",
"Expression" : "UPPER(string expression)"
}]
}