-2

I am having a little confusion of what I have studied. I have studied that drivers are software programs that are required to interact external hardware devices like printers,mouse,mobiles etc. But when I connect ODBC or JDBC in Java,it requires that we specify the drivers.

So why do we need to specify those drivers since our database( Oracle DBC ) is software and not a hardware.

HN Singh
  • 98
  • 2
  • 13
  • these driver had the package that you have to use in your Java class to connect your database. – Ye Win Nov 10 '16 at 06:41
  • BUT still they are not any type of hardware – HN Singh Nov 10 '16 at 06:42
  • Driver generally means some implementation of functionality that adheres to a contract set forth by another committee or group or something. – Qix - MONICA WAS MISTREATED Nov 10 '16 at 06:42
  • 1
    JDBC is an abstraction to connect to different DBMS (Database management system). The driver translates between JDBC and the native interface of the DBMS. ODBC is some similar abstraction layer specified by Microsoft. – Henry Nov 10 '16 at 06:52

1 Answers1

1

Your understanding of a driver is not correct. Driver are not only for hardware that is external but driver are also needed for special cases of software interaction. In this case the driver is used to access another filesystem that your system alone wouldn't be able to understand. So the driver is used to connect to the database and to be able to interact with it.

the exact definition is: Java Database Connectivity (JDBC) is an application programming interface (API) for the programming language Java, which defines how a client may access a database. (taken from wikipedia)

Nico
  • 1,727
  • 1
  • 24
  • 42
  • Thank you@Nico .. This really helped me to clear out my confusion. Actually I have learnt that drivers are only used for external devices in our textbook,Which is wrong as explained by you. – HN Singh Nov 10 '16 at 17:43
  • No Problem :) I'm glad I could help – Nico Nov 11 '16 at 06:36