gin sqlserver 增删改查 实例 -回复
Gin SQL Server是一种常用的Go语言开发的Web框架,它提供了一种简单、快速和高效的方式来构建和开发Web应用程序。在Gin框架中,与SQL Server进行增删改查操作是非常常见的需求。本文将以"gin sqlserver 增删改查"为主题,一步一步地介绍如何在Gin框架中使用SQL Server进行数据操作。
首先,我们需要准备一个基本的Gin项目。如果你还没有搭建好一个Gin项目,可以通过以下命令来创建一个新的项目:
go mod init <项目名称>
在项目的根目录下创建一个``文件,将以下代码添加到文件中:
go
package main
import (
"database/sql"
"fmt"
"log"
"net/http"
"github/gin-gonic/gin"
_ "github/denisenkom/go-mssqldb"
)
var db *sql.DB
func init() {
var err error
连接数据库
db, err = sql.Open("mssql", "server=数据库地址;user id=用户名;password=密码;database=数据库名称")
if err != nil {
log.Fatal(err)
}
}
func main() {
定义路由
router := gin.Default()
创建学生信息
router.POST("/student", createStudent)
获取学生信息
router.GET("/student/:id", getStudentByID)
更新学生信息
router.PUT("/student/:id", updateStudent)
删除学生信息
router.DELETE("/student/:id", deleteStudent)
server error啥意思 启动服务器
router.Run(":8080")
}
type student struct {
ID string `json:"id"`
Name string `json:"name"`
Age int `json:"age"`
}
func createStudent(c *gin.Context) {
var s student
if err := c.ShouldBindJSON(&s); err != nil {
c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
return
}
stmt, err := db.Prepare("INSERT INTO students (name, age) VALUES (?, ?)")
if err != nil {
c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()})
return
}
defer stmt.Close()
_, err = stmt.Exec(s.Name, s.Age)
if err != nil {
c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()})
return
}
c.Status(http.StatusCreated)
}
func getStudentByID(c *gin.Context) {
id := c.Param("id")
stmt, err := db.Prepare("SELECT name, age FROM students WHERE id = ?")
if err != nil {
c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()})
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论