go語言連線mysql操作
在windows下安裝
1、goland(go IDE) 安裝位置:
D:\package\goland
2、go 安裝位置 :
D:\package\go
3、GOPATH 位置:
D:\package\go\workspaceD:\package\go\workspace
建立三個空資料夾 在GOPATH目錄下建立三個檔案 bin 、src 、pkg
4、GOROOT 位置:
D:\package\go
5、配置正確的環境變數 在path中配置 GOPATH 和 GOROOT
在linux下安裝1、解壓安裝包 >tar -zxvf go1.7.6.linux-amd64.tar.gz 2、安裝目錄為: /opt/go/go 3、工作目錄為: /opt/go/workspace 4、配置環境變數 >vi ~/.bashrc export GOROOT=/opt/go/go export PATH=$GOROOT/bin:$PATH export GOPATH=/opt/go/workspace 5、重新整理環境變數 source ~/.bashrc 6、執行測試程式test.go > go run test.go
二、安裝GIT
安裝git,為了用來下載mysql驅動包,此操作在Windows下執行
1、git安裝目錄為: D:\package\Git 2、給path中配置git的環境變數 3、使用git下載mysql的驅動 在Windows中 ,使用cmd切換到GOPATH的src目錄下 ,執行 >go get github.com/go-sql-driver/MYSQL 1)異常資訊: fatal: unable to access 'https://github.com/go-sql-driver/MYSQL/': error setting certificate verify locations: CAfile: D:/package/Git/mingw64/libexec/ssl/certs/ca-bundle.crt CApath: none package github.com/go-sql-driver/MYSQL: exit status 128 2)解決辦法: 在git安裝目錄下開啟git-bash,執行以下命令即可; > git config --system http.sslverify false 4、匯入驅動包 下載好驅動後可看到在GOPATH目錄下的src檔案下生成github.com這個檔案 在go程式中匯入以下包 import( "database/sql" _"github.com/Go-SQL-Driver/MySQL"//就是你下載的檔案地址,如果是自己拷貝的,那麼就寫自己建立的路徑 "log" //"reflect" //獲取變數型別用 )
三、編譯程式
在Windows中編譯Windows可執行檔案1、在windows中,使用cmd切換到工程目錄中
2、使用 go run project_name 即可執行程式;
3、使用 go build projec_name 即可編譯程式;
4、編譯好的程式執行執行即可。
在Windows中編譯linux可執行檔案1、首先需要設定以下兩個引數: set GOARCH=amd64 set GOOS=linux 2、編譯程式,使用go build 出來的就是linux 64 位的可執行程式了 3、例如test.go 這個go程式 執行 go build test.go 生成編譯好的test檔案 在linux機器中執行 ./test 即可。
四、連線指令碼
package main
import(
"database/sql"
_"github.com/Go-SQL-Driver/MySQL"//就是你下載的檔案地址,如果是自己拷貝的,那麼就寫自己建立的路徑
"log"
"fmt"
"time"
)
func main() {
//username mysql賬號
var userName = "test2"
//password mysql密碼
var passWord = "abc"
//ip mysql資料庫的IP
var ip = "192.168.136.136"
//port mysql資料庫的埠
var port = "3306"
// database 需要連線的資料庫名稱
var database = "test"
dataSourceName := sourceName2(userName,passWord ,ip ,port ,database)
//連線示例
// db,err := sql.Open("mysql","test2:[email protected](192.168.136.136:3306)/test?charset=utf8" )
conn,err := sql.Open("mysql",dataSourceName )
if err != nil{
panic(err.Error())
log.Println(err)
return
}else {
fmt.Println("connection mysql succcess ! ")
}
defer conn.Close() //只有在前面用了 panic[丟擲異常] 這時defer才能起作用,如果連結資料的時候出問題,他會往err寫資料。defer:延遲,這裡立刻申請了一個關閉sql 連結的草錯,defer 後的方法,或延遲執行。在函式丟擲異常一會被執行
//產生查詢語句的Statement
stmt, err := conn.Prepare(`show tables`)
if err != nil {
log.Fatal("Prepare failed:", err.Error())
}
defer stmt.Close()
//通過Statement執行查詢
rows, err := stmt.Query()
if err != nil {
log.Fatal("Query failed:", err.Error())
}
//建立一個列陣列
cols, err := rows.Columns()
var colsdata = make([]interface{}, len(cols))
for i := 0; i < len(cols); i++ {
colsdata[i] = new(interface{})
fmt.Print(cols[i])
fmt.Print("\t")
}
fmt.Println()
//遍歷每一行
for rows.Next() {
rows.Scan(colsdata...) //將查到的資料寫入到這行中
PrintRow(colsdata) //列印此行
}
defer rows.Close()
}
//連線到mysql
func sourceName2(userName , passWord ,ip , port, database string) string{
var connection string
connection = userName + ":" + passWord +"@tcp(" + ip + ":" + port + ")/"+database+"?charset=utf8"
return connection
}
//列印一行記錄,傳入一個行的所有列資訊
func PrintRow(colsdata []interface{}) {
for _, val := range colsdata {
switch v := (*(val.(*interface{}))).(type) {
case nil:
fmt.Print("NULL")
case bool:
if v {
fmt.Print("True")
} else {
fmt.Print("False")
}
case []byte:
fmt.Print(string(v))
case time.Time:
fmt.Print(v.Format)
default:
fmt.Print(v)
}
fmt.Print("\t")
}
fmt.Println()
}
相關推薦
go語言連線mysql操作
一、安裝在windows下安裝1、goland(go IDE) 安裝位置: D:\package\goland 2、go 安裝位置 : D:\package\go 3、GOPATH 位置: D:\package\go\workspaceD:\package\go\wor
Go語言連線、操作MySQL資料庫
1、下載 github.com包 golang的”database/sql”是操作資料庫時常用的包,這個包定義了一些sql操作的介面,具體的實現還需要不同資料庫的實現,mysql比較優秀的一個驅動是:github.com/go-sql-driver/mysql,在介面、驅動
【go語言讀取mysql】go語言連線mysql,並且查詢出結果
一、需求分析 go語言 連上mysql,並且從mysql中讀取資料 二、實現效果 "D:\Program Files (x86)\JetBrains\Gogland 171.3780.106\
Linux 下c語言連線與操作MYSQL
1.安裝mysql 2.安裝mysql.h函式庫 sudo apt-get install libmysqlclient-dev 3. mysql_real_connect() 連線一個mysql伺服器 語法如下 MYSQL *mysql_real_connect
五分鐘beego框架圖文簡介講解03-go語言簡單方式操作MySQL資料庫
安裝go操作MySQL的驅動 go get -u -v github.com/go-sql-driver/mysql go簡單操作MySQL資料庫 導包 import "github.com/go-sql-driver/mysql" 連線資料庫,用sql.Open()方法,open()方法
Linux C語言連線MySQL 增刪改查操作
Linux下想要測試mysql和memcached的效能,因為是伺服器只能通過終端連線,所以考慮用C語言寫測試程式碼。於是研究了把C怎麼連線MySQL以及增刪改查的程式碼。安裝mysql-client或者編譯原始碼安裝mysql後,會有支援C語言寫客戶端的標頭檔案和庫檔案
Go語言slice基本操作
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
簡單講一下C語言連線MySQL資料庫
1.首先你得將MySQL安裝上 apt-get install mysql-server (mysql -uroot -p 登陸測試) 2.安裝連結庫 apt-get install libmysqlclient-dev 3.進行資料庫的建立,例如: cre
註冊模組MVC——連線mysql操作
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 T
Linux程式設計——C語言連線MySQL資料庫
MySQL是Linux系統下廣泛使用的開源免費資料庫,是Linux應用程式資料儲存的首選。許多釋出的Linux版本是自帶MySQL的,但是也有些釋出版本是不帶的(比如我現在用的Ubuntu),那就需要手動安裝。在Synaptic Packet Management中搜索“m
C語言連線mysql簡單查詢例項入門-mysql_init,mysql_real_connect,mysql_query,mysql_close等
一: 分配或初始化與mysql_real_connect()相適應的MYSQL物件。用mysql_init()函式。 MYSQL *mysql_init(MYSQL *mysql) 描述 分配或初始化與mysql_real_connect()相適應的MYSQL物件。如
在Windows/Ubuntu上使用Visual Studio Code作為Go語言編輯器操作步驟
下面以在Windows10上操作為例,在Ubuntu上操作步驟與windows一致:1. 從 https://code.visualstudio.com/ 下載windows上的最新發布版本1.21.1,即VSCodeSetup-x64-1.21.1.exe;2. 以管理員
C語言連線MySQL資料庫
1 配置 win7 32bit,mysql5.5,vs2008 vc路徑設定,工具 -> 選項 -> 專案和解決方案 -> VC++ 路徑,Platform選擇Win32,然後 Include files中新增 D:\Program F
golang連線mysql操作及動態連線池設定
golang本身沒有提供連線mysql的驅動,但是定義了標準介面供第三方開發驅動。這裡連線mysql可以使用第三方庫,第三方庫推薦使用https://github.com/Go-SQL-Driver/MySQL這個驅動,更新維護都比較好。下面演示下具體的使用,完
使用go語言操作mysql資料庫
1.下載並匯入資料庫驅動包 官方不提供實現,先下載第三方的實現,點選這裡檢視各種各樣的實現版本。 這裡選擇了Go-MySQL-Driver這個實現。地址是:https://github.com/go-sql-driver/mysql/。 然後按照裡面的說明下載驅動包: $ go get
Go語言操作Redis、MySQL
文章出處:http://www.cnblogs.com/wdliu/p/9330278.html 一、redis 簡介 redis(REmote DIctionary Server)是一個由Salvatore Sanfilippo寫key-value儲存系統,它由C語言編寫、遵守BSD協
Go語言開發(十八)、Go語言MySQL數據庫操作
har fail sid 內部 分析 face ack rgs 釋放 Go語言開發(十八)、Go語言MySQL數據庫操作 一、MySQL數據庫驅動 1、MySQL數據庫驅動簡介 Go語言官方沒有實現MySQL數據庫驅動,常用的開源MySQL數據庫驅動實現如下:(1)Go M
【Go語言】連線資料庫SQLite、MySQL、Oracle
本文目錄 說明: go語言連線資料庫不像Java那麼方便,本文分別介紹了連線三種典型的資料庫的驅動以及連線方法:小型,SQLite;中型,MySQL;大型,Oracle. 1.Go連線SQLit
go語言操作mysql範例(增刪查改)
go官方僅提供了database package,database package下有兩個包sql,sql/driver。這兩個包用來定義操作資料庫的介面,這就保證了無論使用哪種資料庫,他們的操作方式都是相同的。 但go官方並沒有提供連線資料庫的drive
go語言筆記——切片函數常見操作,增刪改查和搜索、排序
通過 學習 strings 完整 官方文檔 二分 func fun 必須 7.6.6 搜索及排序切片和數組 標準庫提供了 sort 包來實現常見的搜索和排序操作。您可以使用 sort 包中的函數 func Ints(a []int) 來實現對 int 類型的切片排序。例如