1. 程式人生 > >matlab如何使用jdbc和mysql資料庫連線

matlab如何使用jdbc和mysql資料庫連線

1、安裝mysql的驅動包

  • 在已安裝好的mysql資料夾裡找到Connector J 5.1.27這個資料夾下的mysql-connector-java-5.1.27-bin.jar檔案

  • 並將其拷貝到matlab的工具箱資料夾中......\MATLAB\R2009a\java\jar\toolbox
2、在matlab的中新增路徑
  • 在command視窗中輸入edit classpath.txt 命令,在開啟的文字檔案中新增剛才放進工具箱資料夾的路徑$matlabroot/java/jar/toolbox/mysql-connector-java-5.1.27-bin.jar。注意斜槓的方向。

3、重新啟動matlab,如果沒有報錯,則說明連線成功

4、建立到資料庫的連線


  • 使用database命令,其中一共有5個引數,分別為資料庫的名稱,使用者名稱和密碼,驅動名稱,以及資料庫的在本地伺服器上的地址,埠號和IP地址沒有改的話一般為3306和127.0.0.1
  • fetch函式用來將查詢的結果轉換matlab的結構體資料,其中Data存放的是查詢出來的資料
5.資料庫在哪兒來,使用MySQL WorkBench 可以方便的建立一個關係資料庫,使用匯出功能,將模型匯出為.sql資料庫檔案

  • 勾選幾個關鍵點後生成sql語句

6、至此,matlab和mysql的連線建立完畢

7、另外,從資料庫中讀取資料到matlab有三種資料型別(預設為元胞型別cellarray),分別為元胞型別(cellarray),數字型(numeric),結構型(structure)。可以在連結資料庫之前通過setdbprefs函式來進行設定。如果資料庫檔案中全部是數值型資料時最好採用numeric型的資料,這樣可以使得讀取速度大幅提高,特別是在大型資料讀取時非常明顯。 呼叫格式: 

setdbprefs(‘datareturnformat’,’numric’)

特此記錄,2014-7-15 續:在後來使用中,我在workbench裡更改了資料庫的內容,重新執行matlab裡面的程式後,更改的內容沒有體現。查詢原因後,是因為沒有更改到...\ProgramData\MySQL\MySQL Server 5.7\data這個資料夾裡的內容,預設mysql的檔案都存放在這裡,只有更這裡才能做到matlab裡面內容的更改,其中...為安裝碟符。         非常菜鳥,後來才發現,在workbench裡面的匯出的sql語句是要在命令列裡面進行執行的,才能生成真正的資料庫檔案被matlab等外部程式所呼叫。匯出後,找到sql檔案的路徑,執行以下語句

注意前面加\ . 和空格,後面直接寫上絕對路徑,才算是完整執行了說起來語句,才算是建立了資料庫。 另外,需要注意的是,建立的資料庫名稱必須要和workbench裡面的模型名稱一致才行,否則會報錯。