在處理數據量比較大的數據時,需要用matlab直接去讀取數據庫的文件這樣比較方便快捷,這里就介紹一種matlab與數據庫鏈接的方法。
1.這里主要講解以ODBC的方式來鏈接數據庫,這里以mysql為例說明。
首先要配置DDBC的MySQL數據源
2.配置好數據源之后是要建立連接對象——database
調用格式:
conna=database(‘datasourcename’,’username’,’password’);
在默認情況下,數據庫文件的username和password為空
mysql efun 就是上面建立的數據源名稱
3.建立并打開游標——exec
調用格式:
curs=exec(conna,'sqlquery')
sqlquery為查詢數據庫數據時的SQL語句,特別提醒,當查詢語句里有變數的時候要記得另外建立一個char的語句,然后再查詢,如下例
4.比如想查詢名字是矩陣a的那些人的訂單信息,當名字比較多或者需要從別的文檔中讀取時,可以參與上述例子的方式,將需要讀取的信息儲存在一個變量中,然后用strcat函數將變量和查詢語句連成一句話,然后作為字符賦值給d,最后放在exec游標中進行查詢,下圖是錯誤的做法。
5.把數據庫中的數據讀取到Matlab中——fetch
調用格式:
curs=fetch(curs,RowLimit);
RowLimit為每次讀取的數據參數的行數,不填就默認為全部讀取
然后就是把讀取出來的數據賦值給待計算的變量
6.養成良好習慣,隨手關閉鏈接對象和游標——close
當不再使用數據庫鏈接對象的時候要及時關閉,這樣可以及時釋放內存。
7.最后再給大家介紹幾個查看數據相關信息常用的函數
Rows-查看數據行數
調用格式:numrows=rows(curs)
Cols——查看數據列數
調用格式:numcols=cols(curs)
Attr——查看數據屬性
調用格式:attribute=attr(curs)