MATLab - 数据库句柄为空

时间:2014-07-08 18:52:50

标签: database oracle matlab

我有以下问题。在工作中,我们有个人计算机运行Windows7与MATLab(包括数据库工具箱),甲骨文等。我有一个新的过程,我应该注意哪个涉及连接到oracle数据库的MATLab脚本。这些脚本在除我的部门以外的任何计算机上都能正常工作。可悲的是,IT告诉我,每台PC配置都是一样的,我必须找到我的错误。

所以我通过检查MATLab在通过

连接时创建的连接结构来开始“调试”
conn = database(instance,username,password)

看起来结构的内容等于其他每个人,除了句柄是空的:

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源,但它似乎和其他地方一样。

有人可能知道我如何追查此问题的根源吗?任何帮助或暗示都是高度关注的。

谢谢和最诚挚的问候 斯蒂芬

1 个答案:

答案 0 :(得分:0)

经过一些研究后,人们可以解决这个问题。这实际上非常简单,但我没有尝试过明显的......

首先,如果

   connection = database(...) 
无法创建

,请键入

connection.message

在MATLab控制台中。此消息将为您提供有关错误的其他反馈。在我的情况下,oracle数据库的DNS条目为空。通过系统偏好添加后,它按预期工作。