最近要实现复杂网络相关的实现,每次有个新想法就要重新写程序,着实让人呕吐啊~~所以决定这次花点功夫做个通用点的,所以也就需要接触很多以前没有看到的内容,今晚的任务就是实现Matlab与Access数据库的连接,在baidu搜了一圈,回答倒是有,但答案都一样,也不知是从哪抄来的程序,可是适用了一下总是出问题,最后才知道,这些人啊,就知道抄,也不动手试试,或者他们觉得这是基础知识,所以就忽略了,着实让我这个新手头疼啊~~~不过好在最后还是找到了根源,虽然为了这个小功能花费了不少时间,但最终还是很有成就感的哈,废话不多说,现在就来说说如何实现吧![调皮](https://i-blog.csdnimg.cn/blog_migrate/d2308b2f0c696758f7294326edcb55ad.gif)
Step1:当然是要建立一个数据库啦,哈哈,这个大家应该不用说了吧;
Step2:这一步是很多帖子都忽略的,就是需要用ODBC进行数据库连接,当我发现这个功能的时候,才发现其实暑假在做项目的时候就已经用到了,可是那时候只是一味依赖师兄,所以没好好看,哎呀,真是不该偷懒,嘿嘿![淘气](https://i-blog.csdnimg.cn/blog_migrate/ecfa29802c0cfba27637c5e056ab6877.gif)
方法就是:控制面板--》管理工具--》数据源(ODBC)---》用户DSN--》添加
![](http://fmn037.xnimg.cn/fmn037/20090812/2315/b__jBrJ_53d5000150812d0b.jpg)
然后再数据源名处随意命个名,比如Dataset~~然后点击选择加入在第一步建立的数据库,这一步就ok了~~~
Step3:这就是用到Matlab了,建立一个新的M文件,将以下代码拷贝进去:
function dbimportdemo()
%DBIMPORTDEMO Imports data into MATLAB from a database.
% Version 1.0 21-Oct-1997
% Author(s): E.F. McGoldrick, 12/5/1997
% Copyright 1984-2002 The MathWorks, Inc.
% $Revision: 1.9 $ $Date: 2002/06/17 12:00:49 $
% Set maximum time allowed for establishing a connection.
timeoutA=logintimeout(5)
% Connect to a database.
connA=database('Dataset','','')--%这个Dataset就是刚刚命的名称,(*^__^*) 嘻嘻……
% Check the database status.
ping(connA)--%如果没有第二步,就会在这里报错~~
%错误的:
![](http://fmn041.xnimg.cn/fmn041/20090812/2320/b__DenB_5c5600022d2d2d10.jpg)
%正确的:
![](http://fmn044.xnimg.cn/fmn044/20090812/2320/b__v1JM_47c7000342622d12.jpg)
% Open cursor and execute SQL statement.
cursorA=exec(connA,'select * from Zachary空手道俱乐部');
% Fetch the first 10 rows of data.
cursorA=fetch(cursorA,10)
% Display the data.
AA=cursorA.Data
% Close the cursor and the connection.
close(cursorA)
close(connA)
嗯~~到此为止,应该就结束了,哈哈,自己动手试试看吧~~~