# Using Prepared Statements

If you are using an older version of SingleStore, or using SingleStore with Audit Logging enabled, SingleStore does not support server-side prepared statements. Instead, many client drivers support a configuration option to allow client-side prepared statements. This configuration option may also be referred to as client-side prepared statement emulation or parameter interpolation. You can use the same code in your application, but change a flag in the client driver configuration. For example:

* In the [MySQL Connector/J (JDBC)](https://dev.mysql.com/doc/connector-j/en/connector-j-connp-props-prepared-statements.html) driver, set `useServerPrepStmts=false`, which is the default configuration.
* In [MariaDB Connector/J](https://mariadb.com/kb/en/about-mariadb-connector-j/), set `useServerPrepStmts=false`.
* In [ODBC](https://dev.mysql.com/doc/connector-odbc/en/connector-odbc-configuration-connection-parameters.html), set `no_ssps=1`.
* In the [Go MySQL](https://github.com/go-sql-driver/mysql#interpolateparams) driver, set `interpolateParams=true`.
* In [PHP PDO](https://www.php.net/manual/en/pdo.setattribute.php), set `PDO::ATTR_EMULATE_PREPARES=TRUE`.

In many other databases, server-side prepared statements provide performance advantages, but SingleStore already compiles and caches query plans internally, so SingleStore does not need server-side prepared statements to get most of those performance advantages.

***

Modified at: February 20, 2025

Source: [/db/v9.1/developer-resources/connect-with-application-development-tools/using-prepared-statements/](https://docs.singlestore.com/db/v9.1/developer-resources/connect-with-application-development-tools/using-prepared-statements/)

(An index of the documentation is available at /llms.txt)
