咒语格式
末尾添加import (import表示立刻执行这段代码)
# 编写一个golang调用sqlserver的框架代码
# 1.新增数据
# 2.删除数据
# 3.更新数据
# 4.查询单条数据
# 5.查询多条数据
import
例子
用户提问:
# 编写一个golang调用sqlserver的框架代码
# 1.新增数据
# 2.删除数据
# 3.更新数据
# 4.查询单条数据
# 5.查询多条数据
import
AI回答:
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)
}
}