1. 程式人生 > >matlab連線sql資料庫

matlab連線sql資料庫

最近專案還涉及到matlab連線資料庫,下面我就記錄如何進行配置使得matlab能夠連線sql資料庫。由於最近工程做的多一些,所以分享的都在工程配置上,當初為了這些配置可是反覆解除安裝與重灌,演算法其實也有,但是現在還沒時間整理出來,以後會繼續記錄我們用到的檢索流程和檢索中涉及的演算法。

  首先先說明一下我的作業系統是win8,所用的資料庫是SQLSERVER2012,所用的matlab是2012a。在安裝以上軟體的時候,以我的經驗是要首先安裝SQL2012的(不一定對),因為當初我首先裝VS2010的時候,它會自帶一個SQL,這就會出問題了,出在SQL的ODBC驅動版本將會是6.01(可能)。然後用Matlab2012a連線資料庫的時候會報錯,原因就是ODBC驅動問題。所以安裝順序是先裝SQL2012,然後VS和Matlab安裝順序沒影響。如果先裝SQL2012,那麼ODBC驅動版本就會是6.03,這時候用matlab的database函式連線資料庫的時候就不會報錯了。當安裝好軟體後,下面我記錄具體的連線過程。

1. 檢視服務(如有資料庫衝突)

右鍵我的電腦->管理->服務和應用程式->服務,在右邊的介面中可以查到兩條服務,如圖:

其實這兩條服務有時候會衝突的,所以我可以選擇關掉SQLEXPRESS這條服務,然後保留MSSQLSERVER。

2. 建立資料庫

開啟Microsoft SQL Server Management Studio,使用window驗證登陸,在資料庫下新建一個名字為mydb的資料庫。如果你要為其建立使用者,可以按照下面的流程:展開安全性->右鍵登入名->新建登陸名

然後如下輸入使用者名稱和密碼,並且注意取消勾選“使用者在下次登入時必須更改密碼”,如圖:

然後在使用者對映中勾選如下兩項,別全勾選,其中db_denydatareader,db_denydatawriter是禁止使用者讀寫的。如圖:

最好右鍵點選伺服器,選擇安全性,在伺服器身份驗證修改為SQL Server和Windows身份證驗證模式。如圖:

3. 建立資料來源

建立資料來源的步驟,大家可以參考這篇文章:

http://wenku.baidu.com/link?url=nTWXB-xC4SSWB024mDAk8Tue6NPeFSunjaZFoLDzhlezRUP0-2mvNb3LgeBKgSDKNpUmwqGQozF86B2ma1SuYTkR459xL9BhkR4jd8PLniK

但是我的略有不同。開啟控制面板->管理工具->ODBC資料來源(64位),你就會看到如下圖:

點新增->選擇資料來源驅動程式是SQL Server->按完成:

為你的資料庫命名(假設我是mydb),然後在伺服器中輸入(local)。如圖,然後點選下一步再點選下一步將會測試是否能夠連線:

如果能夠連線上,將會看到,然後就選下一步,直到完成,那麼資料來源就建立完畢了:

如上配置好之後,就可以最後開啟Matlab了,在matlab中輸入database('mydb','','')就可以看到如下資訊: