go操作mysql資料庫

2021-09-28 18:34:08 字數 2901 閱讀 3654

)var db *sql.db //資料庫 控制代碼

var errorg error

//全域性變數

func

init()

}/*功能: 查詢

引數 tablename 表名

cond 選擇條件

items 選擇的欄位名

返回值 ...未定

*/// ex "select id,name from flask_sx_test.stu_test where id = 2"

func

query

(items [

]string

, tablebname string

, cond string

)(row *sql.rows, err error

)else

else}}

buffer.

writestring

(" from "

+ tablebname)

buffer.

writestring

(" where "

+ cond)

stmt, err := db.

prepare

(buffer.

string()

)if err !=

nildefer stmt.

close()

rows, err := stmt.

query()

if err !=

nilreturn rows,

nil}

/*功能: 插入

引數: tablename 表名

itemslice

valueslice //暫時為string

ex. insert into stu_test (`name`,address) values ("www", "bj")

*/func

insert

(tablebname string

, itemslice [

]string

, valueslice [

]inte***ce

)(err error

)var buff bytes.buffer

buff.

writestring

("insert into"

) buff.

writestring

(tablebname +

" ("

) buff.

writestring

(strings.

join

(itemslice,

", "))

buff.

writestring

(") values ("

)//mysql 中 ?的數量

temp1 :=

string

for index :=

0; index <

len(itemslice)

; index++

buff.

writestring

(strings.

join

(temp1,

", "))

buff.

writestring

(" )"

)stmt, err := db.

prepare

(buff.

string()

)if err !=

nildefer stmt.

close()

stmt.

exec

(valueslice...

)return}/*

功能:刪除一行

引數 tablename 表名

cond: 篩選條件

values: 條件值

*/func

deleterow

(tablename string

, cond [

]string

, values [

]inte***ce

)(err error

) buff.

writestring

(strings.

join

(tmp,

" and "))

buff.

writestring

(")"

) stmt, err := db.

prepare

(buff.

string()

)if err !=

nil stmt.

exec

(values...)}

func

main()

// res, _ := query(s1, " flask_sx_test.stu_test ", " id = 2 ")

// var id int

// var name string

// for res.next()

s2 :=

string

s3 :=

make([

]inte***ce

,len

(s2)

)for i, v :=

range s2

insert

(" flask_sx_test.stu_test"

, s1, s3)

}

Go操作MySql資料庫

使用go操作mysql等資料庫,一般有兩種方式 一是使用database sql介面,直接在 裡硬編碼sql語句 二是使用gorm,即物件關係對映的方式在 裡抽象的運算元據庫。一般推薦使用第二種方式。go沒有內建的驅動支援任何資料庫,但是go定義了database sql介面,使用者可以基於驅動介面...

Go 語言操作 MySQL 資料庫

完整 如下,其中需要一些函式,理解記住就好。time 2019 11 6 下午 3 04 插入資料 func insertinfo db sql.db 將資訊寫入資料庫 result,execerr stmt.exec female 18 if execerr nil 返回值 id 為,上面的操作,...

Go語言操作MySQL資料庫

重置密碼 alter user root localhost identified by 111 安裝外掛程式 開機啟動 systemctl enable mariadb 自啟動 systemctl disable mariadb 關閉自啟動 資料庫的開啟和關閉 systemctl status m...