What are some practices for designing a table, or queries, when it comes to case-sensitive data and case-insensitive queries?
For example, I have a Products
table that holds household goods, and presumably because I intend to display this data on a client, I would like to have the original names.
If one of the products is called "Vacuum Cleaner" and someone's doing a search through the database for vacuums, I wouldn't want a term like "vacuum" to not find this particular vacuum.
Currently I am using Postgres so I could probably get away with the ILIKE
operator, but if a database system didn't support this kind of operator, what would be some alternatives?