當前位置:首頁 » 操作系統 » matlab與mysql資料庫

matlab與mysql資料庫

發布時間: 2022-05-12 20:45:06

⑴ 求助~~為什麼matlab和Mysql資料庫連接最後顯示的數據是0

首先要安裝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

⑵ matlab連接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: []

⑶ 如何用matlab獲取到的MySql資料庫中的數據作柱狀圖

從資料庫中不是已經返回數據了嗎,剩下的就是如何解析這些返回的數據,然後用繪圖命令繪制出來了

⑷ 可以用matlab操作mysql中的表與數據嗎

Database toolbox 支持matlab對於mysql的鏈接,包括數據讀取,如果想要向mysql輸出數據,可以使用 datainsert.

⑸ Matlab和Mysql數據連接問題。

有感於網上查到了大量相當有幫助的技術性文章,這里也把我前段時間實現的一個功能程序公布出來,供需者參考。
功能簡介:伺服器R(remote)只負責網站的運行和訪問,每天獲得一批新的原始數據,伺服器L(local)負責後台運算,自動定時從伺服器R的mysql里讀取數據,在L上經過matlab編寫的演算法程序運算後再遠程將結果寫回R的資料庫以實現網站的更新。全程無人值守。(L負責後台運算,安裝matlab;R負責網路訪問,安裝mysql)
不同於網路上查到的實現方法,本程序全部在m文件里編寫,不用php 或c++做介面,宗旨就是用簡單的方法實現簡單的想法。(以下假定suanfa.m子程序已經存在)

1.編寫import_data.m子程序,實現從mysql讀取數據到matlab中.
1)下載mysql的jdbc的java驅動,安裝到*:\Program Files\MATLAB71\java\jar\toolbox路徑下;
2)此「路徑\文件名」添到*:\Program Files\MATLAB71\toolbox\local下的classpath.txt文件中;
3)設置mysql下的資料庫名稱為帶有「mysql 」後綴的,比如:abcmysql;
4)伺服器R的mysql下,輸入「grant all on *.* to username@"L的IP" Identified by

"password",允許L遠程訪問;
5)復制如下代碼到import_data文件中
function MM=import_data();
timeoutA=logintimeout(5)
% Set maximum time allowed for establishing a connection.
connA = database('mysql', 'username', 'password','com.mysql.jdbc.Driver','jdbc:mysql:

//R的IP:3306/abc')
ping(connA) % Check the database status.
cursorA=exec(connA,'SELECT ALL CONLUMA,CONLUMB,CONLUMC FROM tablename);
setdbprefs('DataReturnFormat','numeric'); %set numeric format
cursorA=fetch(cursorA) ; % Fetch all rows of data.
MM=cursorA.Data; % Display the data,save the data in MM
close(cursorA) ; % Close the cursor and the connection.
close(connA)
其中username,password,L\R的IP,資料庫名稱abc,tablename,sql語句都是要依實際修改的。

2.編寫export_data.m子程序,實現從matlab寫回數據到mysql中:
原理類似, (tablename2的表要事先建好u)復制以下程序:
timeoutA=logintimeout(5)
% Set maximum time allowed for establishing a connection.
connA = database('mysql', 'username', 'password','com.mysql.jdbc.Driver','jdbc:mysql:

//R的IP:3306/abc')
ping(connA) % Check the database status.
%delete the records before updating
cursorA=exec(connA,'delete tablename FROM tablename');
Colnames = ;%updating
fastinsert(connA, 'tablename2', Colnames,newdata);
close(cursorA) ;
close(connA);
其中username,password,R的IP,資料庫名稱abc,tablename,sql語句都是要以實際情況修改的,

newdata就是suanfa.m程序得到結果組成的矩陣,這些結果將寫到資料庫中tablename2的表中。

3.編寫主程序以調用這些子程序:
4.編譯m程序為exe程序:

(注意主程序頭部的也要加「function」呦,否則作為腳本文件不能編譯)
1)在matlab環境中配置編譯器,輸入mbuild -setup,依提示操作;

2)輸入mcc -m main.m suanfa.m import_data.m export_data.m生成與主程序同名的exe文件;

3)設置windows任務計劃,添加此exe文件便可以自動定時讀取、計算、更新網站資料庫了。

ps:matlab7.0沒有找到deploytool工具,沒法連接資料庫,要使用更高版本的matlab。

Database Toolbox 2
和關系資料庫進行數據交換
Database 工具箱可以使你使用MATLAB 的數據分析
和可視化工具對存儲在資料庫中的數據進行分析。在
MATLAB 工作環境中, 您可以使用結構化查詢語言進
行:
■ 對資料庫中的數據進行讀寫
■ 使用約束條件對資料庫進行操作
您可以在MATLAB 中和絕大多數的資料庫進行交
互, 包括Oracle、Sybase、Microsoft SQL Server、
MySQL、PostgreSQL 以及Microsoft Access 。該工具箱
還允許您在單個的MATLAB 任務中同時存取多個數據
庫並且支持事務特性。它包含了Visual Query Builder
( 可視化查詢工具), 它可以使您在不熟悉SQL 的情
況下和資料庫進行交互。
Visual Query Builder
可以快速對您的數據
進行存取和圖表顯示
關鍵特性
■ 支持ODBC/JDBC 連接的資料庫介面
包括Oracle、Sybase、Microsoft SQL
Server、MySQL、PostgreSQL 以及
Microsoft Access
■ 從MATLAB 中直接執行查詢語句
■ 對於大數據量查詢, 將增量獲取數據
■ 在所有的數據導入和導出的過程中,
保留數據類型
■ 單個的MATLAB 任務中可以同時
存取多個資料庫
■ 從一個資料庫中導入數據,完成計
算後, 將結果輸出到另外一個資料庫
■ 在單個事務中獲取大數據集, 或者分
割數據, 通過多個事務來完成
■ 通過在一個MATLAB 會話中保持數
據庫連接來減少需要進行輸入和輸出
數據所需要的語句, 除非資料庫連接
被顯式關閉
■ 它可以使您在不熟悉SQL 的情況下
和資料庫進行交互
在MATLAB 中對Microsoft Access 資料庫進行查詢

資料庫工具箱函數列表

資料庫訪問函數
clearwarnings 清除資料庫連接警告
close 關閉資料庫連接
commit 資料庫改變參數
database 連接資料庫
exec 執行SQL語句和打開油標
get 得到資料庫屬性
insert 導出MATLAB單元數組數據到資料庫表
isconnection 判斷資料庫連接是否有效
isreadonly 判斷資料庫連接是否只讀
ping 得到資料庫連接信息
rollback 撤銷資料庫變化
set 設置資料庫連接屬性
sql2native 轉換JDBC SQL 語法為系統本身的SQL語法
update 用MATLAB單元數組數據代替資料庫表的數據

資料庫游標訪問函數
attr 獲得的數據集的列屬性
close 關閉游標
cols 獲得的數據集的列數值
columnnames 獲得的數據集的列名稱
fetch 導入數據到MATLAB單元數組
get 得到游標對象屬性
querytimeout 資料庫SQL查詢成功的時間
rows 獲取數據集的行數
set 設置游標獲取的行限制
width 獲取數據集的列寬

資料庫元數據函數
bestrowid 得到資料庫表唯一行標識
columnprivileges 得到資料庫列優先權
columns 得到資料庫表列名稱
crossreference 得到主健和外健信息
dmd 創建資料庫元數據對象
exportedkeys 得到導出外部健信息
get 得到資料庫元數據屬性
importedkeys 得到導入外健信息
indexinfo 得到資料庫表的索引和統計
primarykeys 從資料庫表或結構得到主健信息
procerecolumns 得到目錄存儲程序參數和結果列
proceres 得到目錄存儲程序
supports 判斷是否支持資料庫元數據
tableprivileges 得到資料庫表優先權
tables 得到資料庫表名稱
versioncolumns 得到自動更新表列

--------------------------------------------------------------------------------

Xinsoft,2004-08-11 20:28:15

資料庫工具箱讓用戶使用MATLAB強大數據分析和可視化工具功能處理存儲在資料庫中的數據的復雜分析。在MATLAB環境下工作,可以用結構化查詢語言SQL)命令:
讀,寫資料庫的數據
簡單和高級條件的數據查詢
連接MATLAB和資料庫包括Oracle,Sybase,Microsoft SQL Server和Informix。
可以用單一MATLAB同時訪問多個資料庫,進行大數據量的事務處理。不懂SQL的用戶可以用Visual Query Builder處理數據。
重點
魯棒介面能力。 用ODBC/JDBC連接資料庫,包括Oracle,Sybase SQL Server,Sybase SQL Anywhere,Microsoft SQL Server, Microsoft Access,
Informix Ingres.
SQL語法。 在MATLAB環境直接執行SQL查詢
動態導入數據。 調節SQL查詢,把數據導入MATLAB。資料庫工具箱滿足小的和大的查詢。

數據類型保存。 在數據導入和導出行為MATLAB保存數據類型
同時訪問多個資料庫。 從資料庫導入數據,對該數據執行計算,然後導入到另一個資料庫。
處理大數據集的能力。
連續狀態的資料庫連接:一旦和某個資料庫的連接建立後,資料庫一直是打開的,除非在MATLAB中執行關閉語句。這提高了資料庫的讀取速度,減少了不必要的命令來調入,輸出數據 Visual Query Builder. 該圖形用戶介面列數據源和所有表和欄位,不懂SQL的用戶可以訪問和查詢資料庫函數列表

資料庫訪問函數
clearwarnings 清除資料庫連接警告
close 關閉資料庫連接
commit 資料庫改變參數
database 連接資料庫
exec 執行SQL語句和打開油標
get 得到資料庫屬性
insert 導出MATLAB單元數組數據到資料庫表
isconnection 判斷資料庫連接是否有效
isreadonly 判斷資料庫連接是否只讀
ping 得到資料庫連接信息
rollback 撤銷資料庫變化
set 設置資料庫連接屬性
sql2native 轉換JDBC SQL 語法為系統本身的SQL語法
update 用MATLAB單元數組數據代替資料庫表的數據
資料庫游標訪問函數
attr 獲得的數據集的列屬性
close 關閉游標
cols 獲得的數據集的列數值
columnnames 獲得的數據集的列名稱
fetch 導入數據到MATLAB單元數組
get 得到游標對象屬性
querytimeout 資料庫SQL查詢成功的時間
rows 獲取數據集的行數
set 設置游標獲取的行限制
width 獲取數據集的列寬
資料庫元數據函數
bestrowid 得到資料庫表唯一行標識
columnprivileges 得到資料庫列優先權
columns 得到資料庫表列名稱
crossreference 得到主健和外健信息
dmd 創建資料庫元數據對象
exportedkeys 得到導出外部健信息
get 得到資料庫元數據屬性
importedkeys 得到導入外健信息
indexinfo 得到資料庫表的索引和統計
primarykeys 從資料庫表或結構得到主健信息
procerecolumns 得到目錄存儲程序參數和結果列
proceres 得到目錄存儲程序
supports 判斷是否支持資料庫元數據
tableprivileges 得到資料庫表優先權
tables 得到資料庫表名稱
versioncolumns 得到自動更新表列
MATLABER曰:
這是個很經典的介紹,
因為它涉及到MATLAB在金融學中的應用,甚至利用它可以作出很好的財務軟體.
mingchen曰:Visual Query Builder 不支持漢字,所以我覺得使用 Visual Query Builder 不是最好的方法;使用DAO,特別ADO是一種很好方法,可以做到與資料庫無關;請看我的一個訪問資料庫的實例:
function Table=GetTable(ConnectionStr,SqlStr)
%ConnectionStr為連接串,比如可以設置ConnectionStr='Data Source=HistryData2.0;
Pr
ovider=MSDASQL;User ID=Admin;Password=;'
%SqlStr為SQL語句,
% 利用ADO調用數據源
try
MyConnection=actxserver('ADODB.Connection');
MyConnection.ConnectionString=ConnectionStr;
invoke(MyConnection,'Open');
MyRecordset=invoke(MyConnection,'Execute',SqlStr);

%域信息
Fields=MyRecordset.Fields;
%域個數
FieldNumber=Fields.Count;
FieldNames=cell(1,FieldNumber);
%獲取數據
% invoke(MyRecordset,'MoveFirst');
Data=invoke(MyRecordset,'GetRows');
MyRecordset.Source;
%記錄行數
RecordCount=size(Data,2);
for i=1:size(FieldNames,2)
TempField=get(Fields,'Item',i-1);
FieldNames=TempField.Name;
end
%給Table賦植
Table.RecordCount=RecordCount;
Table.FieldNames=FieldNames;
Table.Data=Data;
invoke(MyRecordset,'Close');
invoke(MyConnection,'Close');
catch
msgbox(lasterr,'Tint');
Table.Data={};
end

--------------------------------------------------------------------------------

Xinsoft,2004-08-11 20:28:37

一、通過MATLAB 提供的資料庫引擎, 以下是MATLAB ,DATABASE TOOLBOX中的例子,

通過ODBC/JDBC 介面訪問具體的資料庫
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 (c) 1984-2001 The MathWorks, Inc.

% $Revision: 1.7 $ $Date: 2001/01/12 16:22:06 $

% Set maximum time allowed for establishing a connection.

timeoutA=logintimeout(5)

% Connect to a database.
%打開數據源 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)

% Display the data.
%顯示
AA=cursorA.Data

% Close the cursor and the connection.
%關閉
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 Documents\test.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 類型庫的方法原型。

四、通過dde進行動態數據交換,可以查看help

這是我幫你找來的。不知道對不對。找了很久的!

⑹ 如何用MATLAB讀取資料庫Mysql文件

如何用MATLAB讀取資料庫Mysql文件
如何往裡面添加一個 字元型,長度為36 的欄位?A:你需要把那個shows.MYD 所在的那個文件夾拷貝到mysql安裝目錄的data目錄下。
如果你是默認安裝,應該在c:\Program Files\MySQL\MySQL Server 5.0\data\
注意是整個shows那些文件所在的目錄。連目錄一起拷貝哈。按你的描述,就應該是data目錄了。 將d:\data1\下的data目錄拷貝到c:\Program Files\MySQL\MySQL Server 5.0\data\下面。
完成之後,重啟mysql看看,可以運行services.msc 在裡面找到mysql 重新啟動mysql。(前提是你安裝的時候配置了mysql服務,我想你應該配置了吧)
重啟之後 進入命令行,
然後mysql -uroot -p 進入mysql
show databases;
看看能不能看到一個叫data資料庫。
如果能看到,恭喜你, 繼續下面的命令。 如果不行,看後面的方法B。
use dataalter table shows add 列名 類型 長度 等等舉例:增加一個int型名為id的列
alter table shows add id int(11) not null default '0';
alter table shows add name varchar(32) not null default '';
如果需要指定列的位置,假如加入的列在number列後面。那麼
alter table shows add id int(11) not null default '0' after number;方法B。
如果按之前說的文件拷貝方式,重啟進入mysql後看不到data 這個資料庫,那麼可能是你們的mysql版本不一致造成的,應該說這個可能性很大。
那麼,你讓你朋友給你導出資料庫內容。 用mysqlmp命令。
mysqlmp -uroot -p -D 資料庫名.表名 > sss.sql
你拿到這個sss.sql後 再把它導入到你的mysql資料庫。
在cmd下運行
mysql -uroot -p test<sss.sql或者在mysql命令行下運行use testsource sss.sql
這樣shows表就導入到你的test資料庫了。

⑺ matlab連接資料庫的問題

首先要安裝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

⑻ matlab怎樣連接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: [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) f

⑼ matlab鏈接MySQL資料庫總是出錯,有人幫忙看下錯哪了嗎

提示說fetch函數沒有

⑽ matlab怎麼在mysql中新建一個資料庫

是不是用matlab讀寫excel文件啊? 可以用xlsread和xlswrite % 從excel文件中讀數據 [N, T, rawdata] = xlsread(file, sheet, range); % sheet 和 range可以省略 file是excel文件的地址,sheet是excel文件中指定的工作表, range是工作表中要讀取數...

熱點內容
shell腳本的加減 發布:2024-10-09 21:23:23 瀏覽:395
安卓平板和蘋果的平板有什麼區別 發布:2024-10-09 20:26:37 瀏覽:425
上傳速度對網速的影響嗎 發布:2024-10-09 20:09:38 瀏覽:561
密碼鎖芯在哪裡能買到 發布:2024-10-09 20:05:33 瀏覽:452
傳奇伺服器強行下線是什麼意思 發布:2024-10-09 20:05:11 瀏覽:920
sqljoinas 發布:2024-10-09 19:48:01 瀏覽:391
文本編輯器沒有編譯器可以嗎 發布:2024-10-09 19:39:36 瀏覽:996
linux環境變數oracle 發布:2024-10-09 19:24:36 瀏覽:318
pythonimport找不到模塊 發布:2024-10-09 19:23:45 瀏覽:511
安卓怎麼卸載插件 發布:2024-10-09 19:07:13 瀏覽:933