数据库与MATLAB链接http://blog.sina.com.cn/s/blog_9d0b00a401012spy.html

转载 2015年11月18日 21:23:43

首先要安装mysql驱动程序包,详细步骤如下:
Step 1: 将mysql-connector-java-5.1.7-bin.jar文件拷贝到......\MATLAB\R2009a\java\jar\toolbox
Step 2: 到......\MATLAB\R2009a\toolbox\local目录下,找到classpath.txt文件,打开,并添加用来加载mysql的jdbc驱动语句:
$matlabroot/java/jar/toolbox/mysql-connector-java-5.1.7-bin.jar
Step 3:重新打开MATLAB即可


驱动程序安装成功后,接来下要是matlab连接mysql数据库的代码:
conn =database('databasename','username','password','driver','databaseurl')
连接成功后,返回连接对象。
参数如下:
    *databasename: 数据库名称.
    *driver: JDBC driver.
    *username and password: 用户名和密码.
    *databaseurl: 类似于jdbc:subprotocol:subname. subprotocol 是数据库类型,

subname 类似于//hostname:port/databasename.

如果matlab和数据库建立了连接,将返回类似于如下信息:

       Instance: 'SampleDB'
       UserName: ''
         Driver: []
            URL: []
    Constructor: [1x1 com.mathworks.toolbox.database.databaseConnect]
        Message: []
         Handle: [1x1 sun.jdbc.odbc.JdbcOdbcConnection]
        TimeOut: 0
     AutoCommit: 'off'
           Type: 'Database Object'

连接mysql的代码如下:
conn = database('tissueppi','root','root','com.mysql.jdbc.Driver','jdbc:mysql://localhost:3306/tissueppi');

连接成功后,就可以用exec函数执行sql语句
exec函数执行sql语句并返回一个开指针
语法如下:
curs = exec(conn,'sqlquery')
例如:curs = exec(conn, 'select * from customers')

执行完查询后,还要将查询结果从开放cursor对象导入到对象curs中,该功能是用

cursor.fetch函数实现的。
语法如下:
curs = fetch(curs)

使用curs.Data来显示数据,curs.Data返回一个CELL结构,可以先把CELL结构转换成

MATRIX结构再取值:
cur =cell2mat(cur)
a=cur(1,1);
则查询结果就加到了向量a中


注意:
在exec函数执行查询过程中,有的sql语句要输入变量,这时可使用strcat函数完成该

功能。
t = strcat(s1, s2, s3, ...)
for(t=1:10)
    sql1 = strcat('select count(did) from rss_genepairs_u where gocc>=',num2str(t),' || gomf >= ',num2str(t),' || gobp >= ',num2str(t));
end

完整代码如下: 

conn = database('tissueppi','root','root','com.mysql.jdbc.Driver','jdbc:mysql://localhost:3306/tissueppi');
for t=0.5:0.01:0.91
    for x=0.5:0.1:11
       sql = strcat('select count(did) from rss_genepairs_x2 where score <=',num2str(x),' and did in(select did from rss_genepairs_u where gocc >=',num2str(t),' || gomf >= ',num2str(t),' || gobp >= ',num2str(t),')');
       aTemp = exec(conn,sql);
       aTemp = fetch(aTemp);
       a = aTemp.Data;
       a = cell2mat(a);
       a= a(1,1);
    end
end


相关文章推荐

cookie与session(再比较) 转载 原文链接http://blog.sina.com.cn/s/blog_4745d1c10100ihnq.html

1、HTTP协议本身是无状态的。    我们上网都要靠HTTP协议传递信息。比如我们在浏览器里键入:www.bokee.com这个网址并回车,你会发现网址会变成:http://www.bokee...

cookie与session(上) 转载 原文链接http://blog.sina.com.cn/s/blog_4745d1c10100ihnq.html

Cookie和Session的区别(上) 一、cookie机制和session机制的区别 *************************************************...

基于VS2008和Matlab R2010b版本的混合编程的实现(转自:http://blog.sina.com.cn/s/blog_49cb42490100nm5j.html)

众所周知Matlab的强大运算能力让各种工程软件望而却步,而VC程序的友好界面又让人爱不释手,如果能够让两者的优势结合起来的话,势必能让程序员欢欣鼓舞。还好MathWorks已经为我们想到了,基本上现...

VMware下Ubuntu使用NAT共享主机IP上网方式的设置参考(cp:http://blog.sina.com.cn/s/blog_9a982d8801012njl.html)

VMware下Ubuntu使用NAT共享主机IP上网方式的设置参考   (2012-04-21 16:01:01) 转载▼ 标签:  vmware   u...

LayoutInflater作用及使用 http://blog.sina.com.cn/s/blog_629b701e0100rg4d.html

作用:  1、对于一个没有被载入或者想要动态载入的界面, 都需要使用inflate来载入.  2、对于一个已经载入的Activity, 就可以使用实现了这个Activiyt的的findView...

Matlab以MEX方式调用C源代码(转载http://blog.sina.com.cn/s/blog_468651400100coas.html)

Matlab以MEX方式调用C源代码 (2009-04-23 20:10:15) 转载▼ 标签: 杂谈   如果我有一个用C语言写的函数,实现了一个...

1、checklistbox 用法总结 http://blog.sina.com.cn/s/blog_4cf58c9c010106mx.html

http://blog.sina.com.cn/s/blog_4cf58c9c010106mx.html

http://blog.sina.com.cn/s/blog_777a9ccb01013maj.html

myeclipse 在 debug 模式下 启动很慢   今天照常使用MyEclipse 6.5 Blue Edition进行开发,但是却遇到一个怪问题。在MyEclipse环境下...

http://blog.sina.com.cn/s/blog_4b700c4c0100ou6y.html 关于仿射坐标

笛卡尔坐标系 笛卡尔坐标系就是直角坐标系和斜角坐标系的统称。相交于原点的两条数轴,构成了平面放射坐标系(http://www.docin.com/p-4003026.html)。如两条数轴上...

log4net配置(转自 http://blog.sina.com.cn/s/blog_6d1c583c01010tf3.html )

1、概述 log4net是.Net下一个非常优秀的开源日志记录组件。log4net记录日志的功能非常强大。它可以将日志分不同的等级,以不同的格式,输出到不同的媒介。本文主要是介绍如何在Visual ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)