[Persistence] Permit Search when using Derby

Resolves user-facing aspect of #125; removes parts of SQL statement which cause syntax expression, and utilizes `javax.persistence` API to express these in a more general way.

Non-user-facing aspect of #125 (non-consequential errors being logged during startup) is not addressed here.

Additionally, addresses #268 (which was discovered in the context of investigating #125, and easy to resolve while working in the same area of code)