[转载]matlab访问数据库的几种方法
一、通过MATLAB 提供的数据库引擎, 以下是MATLAB ,DATABASE TOOLBOX中的例子,通过ODBC/JDBC 接口访问具体的数据库
function dbimportdemo()
timeoutA=logintimeout(5)
%打开数据源 SampleDB
connA=database('SampleDB','','')
% Check the database status.
ping(connA)
% Open cursor and execute SQL statement.
%执行SQL查询语句
cursorA=exec(connA,'select country from customers');
% Fetch the first 10 rows of data.
%获取前十行数据
cursorA=fetch(cursorA,10)
%显示
AA=cursorA.Data
%关闭
close(cursorA)
close(connA)
二、通过DAO访问数据库(DAO技术适合于访问ACCESS 2000以下版本的数据库,优点是功能齐全,具体可以参考MSDN关于DAO的帮助),以下是我自己摸索出来的,在MATLAB帮助文件中有关于如何调用EXCEL组件的方法。
Handle=actxserver('DAO.DBEngine.36');
MyWSS=get(Handle,'Workspaces')
Count=get(MyWSS,'Count')
MyWS=get(MyWSS,'Item',0)
%打开数据库
MyDB=invoke(MyWS,'OpenDatabase','D:My Documentstest.mdb')
%打开数据库的表,得到一个指向记录集的指针
MyRS=invoke(MyDB,'OpenRecordset','用户')
%获取“用户”表的前十行数据
MyRows=invoke(MyRS,'GetRows','10')
%关闭
invoke(MyRS,'Close')
invoke(MyDB,'Close')
invoke(MyWS,'Close')
三、ADO技术(微软建议ACCESS 2000及以上版本的数据库应尽量通过ADO访问,优点是可以通过较少的对象访问数据库,ADO与今后微软的数据库技术发展方向一致,目前支持的功能稍微少了一些)具体访问的可以参考MSDN的帮助文件和ADO 类型库的方法原型。
%调取访问数据名称和路径
= uigetfile('*.xls');
%赋给变量file
file=;
%读取数据
x=xlsread(file);
转自:http://blog.sina.com.cn/s/blog_7a84957f0101eua3.html
页:
[1]