---
title: Case insensitivity for a JDBC repo
description: The following topic only applies if you have set up a JDBC repository, as described in Select a repository
component: pingidm
version: 8.1
page_id: pingidm:install-guide:repo-case-insensitive
canonical_url: https://docs.pingidentity.com/pingidm/8.1/install-guide/repo-case-insensitive.html
keywords: ["Installation", "JDBC"]
---

# Case insensitivity for a JDBC repo

|   |                                                                                                                                    |
| - | ---------------------------------------------------------------------------------------------------------------------------------- |
|   | The following topic only applies if you have set up a JDBC repository, as described in [Select a repository](chap-repository.html) |

A DS repository is case-insensitive by default. The supported JDBC repositories are generally case-sensitive by default. Case-sensitivity can cause issues if queries expect results to be returned, regardless of case.

For example, with the default configuration of a MySQL database, a search for an email address of `scarter@example.com` might return a result, while a search for `scarter@EXAMPLE.COM` might return an `Unable to find account` error.

If you need to support case-insensitive queries, you must configure a case-insensitive collation in your JDBC repository, on the specific columns that require it. For example:

* For a generic managed object mapping in MySQL or MariaDB, change the default collation of the `managedobjectproperties.propvalue` column to `utf8_general_ci`. Note that this changes case-sensitivity for *all* managed object properties. To change case-sensitivity for all the properties of a specific object, specify a different table for the `propertiesTable` entry in your `repo.jdbc.json` for that object, and adjust the collation on that table. To change case-sensitivity only for certain properties of an object, use an explicit mapping.

* For a PostgreSQL repository, use an explicit table structure if you require case-insensitivity. Managing case-insensitivity at scale with generic tables in PostgreSQL is not supported. For more information about object mappings, refer to [Mappings with a JDBC repository](../objects-guide/explicit-generic-mapping-jdbc.html).

* For an Oracle DB repository, refer to the corresponding [Oracle documentation](https://docs.oracle.com/database/121/NLSPG/ch5lingsort.htm#NLSPG0051).

* For a SQL Server repository, refer to the corresponding [Windows documentation](https://docs.microsoft.com/en-us/sql/t-sql/statements/windows-collation-name-transact-sql?view=sql-server-2017).

* For a DB2 repository, refer to the corresponding [DB2 documentation](https://developer.ibm.com/articles/making-db2-case-insensitive/).
