咒语格式:末尾添加import | 注意 |
---|---|
# 编写一个golang调用sqlserver的框架代码 |
import | |
例子:
提问:
import
回答
go
package main
import (
"database/sql"
"fmt"
)
func main() {
db, err := sql.Open("sqlserver", "server=.;database=mydb;uid=sa;pwd=mypassword")
if err != nil {
panic(err)
}
// 新增数据
insertStmt := "INSERT INTO table_name (col1, col2) VALUES (?, ?)"
stmt, err := db.Prepare(insertStmt)
if err != nil {
panic(err)
}
result, err := stmt.Exec("some value", 100)
if err != nil {
panic(err)
}
// 删除数据
deleteStmt := "DELETE FROM table_name WHERE id=?"
stmt, err = db.Prepare(deleteStmt)
if err != nil {
panic(err)
}
result, err = stmt.Exec(10)
if err != nil {
panic(err)
}
// 更新数据
updateStmt := "UPDATE table_name SET col1=? WHERE id=?"
stmt, err = db.Prepare(updateStmt)
if err != nil {
panic(err)
}
result, err = stmt.Exec("new value", 5)
if err != nil {
panic(err)
}
// 查询单条数据
queryStmt := "SELECT * FROM table_name WHERE id=?"
row := db.QueryRow(queryStmt, 5)
var col1, col2 string
err = row.Scan(&col1, &col2)
if err != nil {
panic(err)
}
fmt.Println(col1, col2)
// 查询多条数据
rows, err := db.Query(queryStmt)
if err != nil {
panic(err)
}
for rows.Next() {
err = rows.Scan(&col1, &col2)
if err != nil {
panic(err)
}
fmt.Println(col1, col2)
}
}