# PL/SQL

## Language-specific Properties <a href="#language-specific-properties" id="language-specific-properties"></a>

Discover and update the PL/SQL-specific [analysis-parameters](https://docs.sonarsource.com/sonarqube-server/analyzing-source-code/analysis-parameters "mention") by going to **Administration** > **Configuration** > **General Settings** > **Languages** > **PL/SQL**

## Advanced parameters <a href="#advanced-parameters" id="advanced-parameters"></a>

### Default schema <a href="#default-schema" id="default-schema"></a>

|                             |                                                                                                                                                                                                                                              |
| --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Parameter**               | **Description**                                                                                                                                                                                                                              |
| `sonar.plsql.defaultSchema` | <p>When a schema object (table, view, index, synonym) is referenced in SQL code without a schema prefix, the analyzer will assume that it belongs to this schema.</p><p>Defaults to <code>sonar.plsql.jdbc.user</code><strong>.</strong></p> |

### Data dictionary <a href="#data-dictionary" id="data-dictionary"></a>

Some rules raise issues only when a data dictionary is provided during analysis. To provide a data dictionary, you must define the following properties in the `sonar-project.properties` file or on the scanner command line using the `-D` prefix:

| **Parameter**                   | **Description**                                                                                                                                                       |
| ------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sonar.plsql.jdbc.url`          | URL of the JDBC connection. **Required for data dictionary lookup**. For example: `jdbc:oracle:thin:@my-oracle-server:1521/my-db`                                     |
| `sonar.plsql.jdbc.user`         | <p>JDBC user to authenticate the connection.</p><p>Will be used as the default schema name if not specified otherwise via <code>sonar.plsql.defaultSchema</code>.</p> |
| `sonar.plsql.jdbc.password`     | JDBC password provided to authenticate the connection.                                                                                                                |
| `sonar.plsql.jdbc.driver.path`  | Path or URL of the Oracle JDBC driver JAR.                                                                                                                            |
| `sonar.plsql.jdbc.driver.class` | Java class name of the Oracle Driver. For example: `oracle.jdbc.OracleDriver`                                                                                         |

Providing this configuration allows SonarPLSQL to query data dictionary views such as `SYS.ALL_TAB_COLUMNS` in order to better analyze your SQL.

## Related pages <a href="#related-pages" id="related-pages"></a>

* [adding-coding-rules](https://docs.sonarsource.com/sonarqube-server/extension-guide/adding-coding-rules "mention")
