使用jdbc连接到Excel表格,而不指定DSN到Excel表格
我想使用jdbc或其他方法连接到Excel工作表,但我不想使用pipe理工具指定相同的DSN。 他们是否使用代码来做到这一点? 如果是的话如何?
提前致谢
也可以在不使用DSN的情况下连接到电子表格,DSN提供了一种更灵活的方法,可以在感兴趣的Excel文件中指定JDBC,而无需访问客户端registry来定义所需的DSN。 没有DSN,db连接创build如下,请不要区别构造的JDBC URL:
java.sql.DriverManager.getConnection( "jdbc:odbc:Driver={Microsoft Excel Driver (*.xls)};DBQ=C:/Documents and Settings/myPath/Desktop/qa.xls");
这里DBQ定义目标电子表格文件(qa.xls)的path。 反斜杠和正斜杠都能正常工作。
来源: 可用的来源
你要避免的是一个DSNless连接string。 有关详细信息,请参阅http://support.microsoft.com/kb/165866 。 然而,我会selectJayan 14提到的Apache POI。
尝试更改驱动程序名称从Microsoft Excel Driver(*.xls)
驱动程序执行Microsoft Excel(*.xls)
java.sql.DriverManager.getConnection("jdbc:odbc:Driver={Driver do Microsoft Excel(*.xls)};DBQ=C:/Documents and Settings/myPath/Desktop/qa.xls");
如果你想更新excel文件,使用下面的连接string:
java.sql.DriverManager.getConnection("jdbc:odbc:Driver={Driver do Microsoft Excel(*.xls)};DBQ=C:/Documents and Settings/myPath/Desktop/qa.xls;ReadOnly=0");