這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。
在linux 上做go 環境搭建 已經可以了。並且 串連上了 mysql 資料庫。
但是 開發 還是 在windows 上面的比較多。所以要研究下 windows 下如何弄 。
需要使用一個 mingw 的環境 。 要使用make 命令
官網: http://www.mingw.org/
下載
http://sourceforge.net/projects/mingw/files/
安裝:
安裝 基本編譯環境。
開始下載檔案。
然後下載 golang windows 版本:
http://code.google.com/p/gomingw/downloads/list
一定要 386的版本。。即使你是 64 位元系統。因為 在make 編譯 mysql的時候發現 需要 386 的編譯命令 “8g”
下載 gowin386_release.r60.3.zip
設定 環境變數:
下載 GoMysql
https://github.com/Philio/GoMySQL
然後進入 GoMysql 使用 mingw 命令列
最重要的 兩步 !!
執行
make
make install
然後 進入 安裝 eclipse 外掛程式。
設定路徑:
建立一個工程編寫如下代碼:
package mainimport "fmt"import "os"import "mysql"func main() {fmt.Print("hell")// Connect to databasedb, err := mysql.DialTCP("127.0.0.1", "root", "root", "stock")if err != nil {fmt.Print("conn error")os.Exit(1)}// Perform queryerr = db.Query("select stock_id,stock_code,stock_name from stock")if err != nil {fmt.Print("query error")os.Exit(1)}// Get result setaresult, err := db.UseResult()if err != nil {os.Exit(1)}// Get each row from the result and perform some processingfor {row := result.FetchRow()if row == nil {break}//id := row[0].(uint64)num, str1, str2 := row[0].(int64), row[1].(string), row[2].(string)fmt.Println(" out:", num, str1, str2)}}
修改了下代碼。顯示資料庫記錄:
資料庫表結構:
CREATE TABLE `stock` ( `stock_id` int(11) NOT NULL AUTO_INCREMENT, `stock_code` varchar(10) NOT NULL, `stock_name` varchar(20) NOT NULL, PRIMARY KEY (`stock_id`)) ENGINE=MyISAM AUTO_INCREMENT=23 DEFAULT CHARSET=gbk
含義 串連 mysql 資料庫 stock 查詢 表 stock 查詢 出 2條記錄 列印 2 個 hello。
成功在 eclipse 裡面 編譯 列印資訊。測試成功。非常高興。
基本上 使用 golang 編寫的程式 接近 c 。速度非常的快。並且 好好的利用 chan 函數編程可以寫些 並發高的 服務程式。
繼續研究 golang 語言。
搭建windows 主要目的是 可以再windows 下面開發。主要 部署程式還是在linunx 下面進行。運行效率要高。