码迷,mamicode.com
首页 > 数据库 > 详细

ubuntu 14.04 odbc配置

时间:2015-03-13 15:47:12      阅读:215      评论:0      收藏:0      [点我收藏+]

标签:

为了能够使用linux下golang环境连接sqlserver 2008查了很多资料,最终采用unixodbc freetds等连接成功。

运行以下shell

#!/bash/bin
sudo apt-get update && sudo apt-get upgrade -y
sudo
apt-get install unixodbc unixodbc-bin unixodbc-dev freetds-bin freetds-dev tdsodbc -y echo "=================================================================" echo "[FreeTDS] Description = FreeTDS Driver v0.91 Driver = /usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so Setup = /usr/lib/x86_64-linux-gnu/odbc/libtdsS.so fileusage=1 dontdlclose=1 UsageCount=1 client charset=utf-8" | sudo tee -a /etc/odbcinst.ini echo "[testdb] Driver = FreeTDS Description = My Test Server Trace = No ServerName = demosql #这里对应下面的freetds.conf中的名称 Port = 1433 Database = db_demo #修改为你需要连接的数据库名称 TDS_Version = 7.2"
| sudo tee -a /etc/odbc.ini
echo "[demosql] host =192.168.1.1 #这里填写自己的数据库地址 Port = 1433 tds version = 7.2 #连接sql2008,根据freetds官方网站说法,可以使用7.2版本
#http://www.freetds.org/userguide/choosingtdsprotocol.htm
" | sudo tee -a /etc/freetds/freetds.conf echo "=================================================================" echo "isql -v testdb username passwd"

完成后利用 isql -v DSN名称 用户名 密码进行连接测试

测试成功后下载go所需的odbc包

go get -v -u github.com/weigj/go-odbc

接下来编写一个测试程序:

package main

import (
	"fmt"
	"github.com/weigj/go-odbc"
)

func main() {
	conn, _ := odbc.Connect("DSN=testdb;UID=sa;PWD=password")
	stmt, _ := conn.Prepare("select top 10 * from studentinfo")
	stmt.Execute()
	rows, _ := stmt.FetchAll()
	for i, row := range rows {
		fmt.Println(i, row)
	}
	stmt.Close()
	conn.Close()
}

结果:

[ `run` | done: 20.224378ms ]
    0 &{[28]}
    1 &{[23]}
    2 &{[42]}
    3 &{[23]}
    4 &{[24]}
    5 &{[25]}
    6 &{[32]}
    7 &{[42]}
    8 &{[35]}
    9 &{[30]}

 

ubuntu 14.04 odbc配置

标签:

原文地址:http://www.cnblogs.com/forrestsun/p/4334980.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!