This commit provides some extra functionality and fixes to the Oracle DB Unit base case. It fixes an issue with the URI parsing where the preceding slash was included with the database name which triggered errors and it also supports passing in a custom Oracle database schema and table prefix as well. A bug with the charset is also fixes to use the right field instead of the host field it was previously using.
This pull request validates that the `$key` parameter provided to the function is actually a string before trying to use this. I came across this as I was working to modify JTable to be able to support multiple primary keys in a somewhat transparent way. By default JTable passes through it's keys onto the database `insertObject` and `updateObject` function which works well for single keys but not properly for `insertObject` when the `$key` is an array.