最近工作當中有Linux嵌入式系統中操作數據庫的需求,由於以前沒有接觸過數據庫,所以自己找了些資料來學習了下,經過了幾番的折騰,到現在工作基本完成,現在總結下以方便自己以后查閱,同時也希望能幫助到遇到這方面困難的朋友。
什么是FreeTDS呢?其實就是一個開源(或者可以說成自由)的C程序庫,它可以實現在Linux系統下訪問操作微軟的SQL數據庫。可以用在Sybase的db-lib或者ct-lib庫,在里面也包含了一個ODBC的庫。允許許多應用軟件連接到Sybase或者微軟的SQL服務器。FreeTDS是以源碼的現實發布的,正因為是這樣,所以它幾乎可以在任何系統中進行編譯安裝。
FreeTDS的軟件獲取:
可以在官網上進行下載:http://www.freetds.org/ ,我下載的版本是freetds-0.91,好像是最新版的
FreeTDS的安裝:
1、將下載下來的壓縮文件解壓到任意目錄,進入到解壓后的目錄中
2、將身份切換到root身份,開始配置編譯環境,
./configure --prefix=/home/joey/work/freetds --with-tdsver=7.1 --enable-msdblib --disable-libiconv --host=arm-none-linux-gnueabi
解釋一下各參數的意義:--prefix是FreeTDS的安裝路徑,可以根據需要隨意設置;
--with-tdsver設置FreeTDS的版本,我這里設置了7.1是為了能連接SQL2005,網上有的文檔說這里設置成8.0,但是我設置成8.0后編譯出來的居然是5.0的,不知道什么原因,按這樣設置成7.1編譯出來的FreeTDS的版本就是7.1的;
--enable-msdblib是是否允許Microsoft數據庫函數庫,這里為允許;
--disable-libiconv這個選項不一定是必須的,FreeTDS會做一次字符集的默認轉換,要查找ISO8859-1字符集,這有可能會導致中文亂碼;
--host編譯器名字,由於我的運行平台是arm平台,所以用到了交叉編譯
3、在配置好了以后,接下來就簡單了,就是用make,然后make install ;也可以一步到位,make && make install ;
FreeTDS測試:
FreeTDS安裝好了,接下來就可以查看下FreeTDS狀態了;
運行./tsql -C ,在安裝目錄的bin目錄下可以找到tsql ,查看終端打印出來信息,可以看到版本號為7.1了: