I have a on-premise data base(Oracle DB), this database i need to use in salesforce directly using External Object technology provided by salesforce. I understood how to use External objects in salesforce, but my question is what should be there from database side so that salesforce external objects can use the database, if i have a hostname,username,password and port number for the data base is that enough can salesforce connect to database using host name alone in the url section provided in external data source creation?, and what in type if i select ODATA adapter 2.0 then what else my database should be configured with, should it be exposed with odata like a .svc file? and what is this odata service can i write my own odata service and host it for free?
The native REST API for Oracle databases is ORDS which is not compatible with Salesforce. It's possible to develop your own OData REST endpoint using WCF Data Services; or use a commercial Oracle Odata service specific to Salesforce from Progress DataDirect that generates an endpoint using your database connection information.