oracle:
一、将OracleJDBC的JAR包拷贝到Matlab的相关目录下($matlabroot/java/jar/toolbox)
sudo cp ojdbc6.jar /opt/local/MATLAB/R2017a/java/jar/toolbox/.
注意:2017a还只支持到jdk7,故只支持jdk8以上的ojdbc8.jar不可以。
二、配置matlab的classpath.txt
vi /opt/local/MATLAB/R2017a/toolbox/local/classpath.txt
添加如下行:
$matlabroot/java/jar/toolbox/ojdbc6.jar
三、启动MATLAB并接数据库
>> clear
>> conn=database('xe','scott','tiger','oracle.jdbc.driver.OracleDriver','jdbc:oracle:thin:@127.0.0.1:1521:');
>> curs=exec(conn, 'select * from EMP');
>> curs = fetch(curs, 100);
>> AA = curs.Data;
>> AA
AA =
14×8 cell 数组
[7369] 'SMITH' 'CLERK' [7902] '1980-12-17 00:00:…' [ 800] [ NaN] [20]
[7499] 'ALLEN' 'SALESMAN' [7698] '1981-02-20 00:00:…' [1600] [ 300] [30]
[7521] 'WARD' 'SALESMAN' [7698] '1981-02-22 00:00:…' [1250] [ 500] [30]
[7566] 'JONES' 'MANAGER' [7839] '1981-04-02 00:00:…' [2975] [ NaN] [20]
[7654] 'MARTIN' 'SALESMAN' [7698] '1981-09-28 00:00:…' [1250] [1400] [30]
[7698] 'BLAKE' 'MANAGER' [7839] '1981-05-01 00:00:…' [2850] [ NaN] [30]
[7782] 'CLARK' 'MANAGER' [7839] '1981-06-09 00:00:…' [2450] [ NaN] [10]
[7788] 'SCOTT' 'ANALYST' [7566] '1987-04-19 00:00:…' [3000] [ NaN] [20]
[7839] 'KING' 'PRESIDENT' [ NaN] '1981-11-17 00:00:…' [5000] [ NaN] [10]
[7844] 'TURNER' 'SALESMAN' [7698] '1981-09-08 00:00:…' [1500] [ 0] [30]
[7876] 'ADAMS' 'CLERK' [7788] '1987-05-23 00:00:…' [1100] [ NaN] [20]
[7900] 'JAMES' 'CLERK' [7698] '1981-12-03 00:00:…' [ 950] [ NaN] [30]
[7902] 'FORD' 'ANALYST' [7566] '1981-12-03 00:00:…' [3000] [ NaN] [20]
[7934] 'MILLER' 'CLERK' [7782] '1982-01-23 00:00:…' [1300] [ NaN] [10]
四、其它数据库也类似:
要注意jdbc支持的Java版本:
pg:
postgresql-42.2.2.jre7.jar
>>conn=database('DBname','user','passwd','org.postgresql.Driver','jdbc:postgresql://127.0.0.1:5432/');
mysql:
mysql-connector-java-5.1.46-bin.jar
conn=database('DBname','user','passwd','com.mysql.jdbc.Driver','jdbc:mysql://localhost:3306/DBname');