I want to connect to an excel sheet using jdbc or some other method but i do not want to specify DSN for the same using administrative tool. Is their someway to do it using code? If yes how ?
Thanks in advance
I want to connect to an excel sheet using jdbc or some other method but i do not want to specify DSN for the same using administrative tool. Is their someway to do it using code? If yes how ?
Thanks in advance
It is also possible to connect to a spreadsheet without using DSN, which provides a more flexible way within code to point JDBC at an Excel file of interest without the accesses to a client registry to define the required DSN. Without DSN, the db connection is created as following, please not the difference of constructed JDBC URL:
java.sql.DriverManager.getConnection( "jdbc:odbc:Driver={Microsoft Excel Driver
(*.xls)};DBQ=C:/Documents and Settings/myPath/Desktop/qa.xls");
Here DBQ defines the path to the target spreadsheet file (qa.xls). Both backslash and forward slash work well.
Source: Available source
What you are eluding to is a DSN less connection string. See http://support.microsoft.com/kb/165866 for details. Yet, I would opt for Apache POI as mentioned by Jayan 14.
try changing the driver name from Microsoft Excel Driver(*.xls)
to Driver do Microsoft Excel(*.xls)
java.sql.DriverManager.getConnection("jdbc:odbc:Driver={Driver do Microsoft Excel(*.xls)};DBQ=C:/Documents and Settings/myPath/Desktop/qa.xls");
and if you want to update the excel file use the following connection string:
java.sql.DriverManager.getConnection("jdbc:odbc:Driver={Driver do Microsoft Excel(*.xls)};DBQ=C:/Documents and Settings/myPath/Desktop/qa.xls;ReadOnly=0");