2014-07-08 38 views
0

我遇到以下问题。在工作中,我们有使用MATLab(包括数据库工具箱),Oracle等运行windows7的个人计算机。我有一个新的过程,我应该注意哪些涉及连接到oracle数据库的MATLab脚本。这些脚本在任何部门的计算机上都可以正常工作,除了我的。不幸的是,IT部门告诉我,每台PC都配置相同,我必须找到我的错误。MATLab - 数据库句柄为空

所以我就开始“调试”通过检查连接时,它通过

conn = database(instance,username,password) 

看来,结构的含量为每一个其他人,除了把手是空的连接结构MATLAB创建:

val = 
    Instance: '***' 
    UserName: '*' 
    Driver: [] 
     URL: [] 
Constructor: [1x1 com.mathworks.toolbox.database.databaseConnect] 
    Message: [1x128 char] 
    Handle: 0 
    TimeOut: 0 
AutoCommit: 'off' 
     Type: 'Database Object' 
上所有其他系统

手柄设置为:

sun.jdbc.odbc.JdbcOdbcConnection

所以我的问题是:我必须配置MATLab还是JDBC/ODBC驱动程序丢失?我已经检查过系统首选项/管理员/ ODBC源,但它似乎与其他地方一样。

有人可能知道我该如何追踪此问题的根源吗?任何帮助或暗示都非常重要。

感谢和问候 斯蒂芬

+0

我已经运行在我认为是类似的问题,我不得不更新/下载Sun软件。 – Wli

回答

0

这里经过一番研究,是一个可以计算出来的方式。它实际上是很容易的,但我没有尝试明显...

第一,如果

connection = database(...) 

不能创建,在MATLAB控制台类型

connection.message 

。此消息将为您提供有关错误的其他反馈。在我的情况下,Oracle数据库的DNS条目在哪里为空。通过系统首选项添加它们后,它按预期工作。