您好,欢迎访问一九零五行业门户网

MATLAB中关于MySQL数据库的操作_MySQL

首先要安装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: [1x1com.mathworks.toolbox.database.databaseconnect]
message: []handle: [1x1 sun.jdbc.odbc.jdbcodbcconnection]
timeout: 0autocommit: '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 * fromcustomers')
执行完查询后,还要将查询结果从开放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 wheregocc>=',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(t),' || gomf>= ',num2str(t),' || gobp >=',num2str(t),')');
atemp = exec(conn,sql);
atemp = fetch(atemp);
a = atemp.data;
a = cell2mat(a);
a= a(1,1);endend
其它类似信息

推荐信息