栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Go语言

goland 使用 gorm 执行 存储过程 : go语言 执行存储过程

Go语言 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

goland 使用 gorm 执行 存储过程 : go语言 执行存储过程

使用 gorm 执行 存储过程
  • 初
    • 安装依赖
    • 代码:
  • 附
    • 存储过程图片
    • 存储过程代码(创建)
  • 表结构
    • 表结构图
    • 表结构代码

初

最近遇到要写存储过程需求,使用 大佬写的 框架 gorm 来完成。简直是方便的不行:
直接上代码:

安装依赖
go get -u gorm.io/gorm
go get -u gorm.io/driver/sqlserver
代码:

package main

import (
	"fmt"
	"gorm.io/driver/sqlserver"
	"gorm.io/gorm"
)

type Student struct {
	Id int
	Name string
	baibai string
}

func (Student) TableName() string {
	return "Student"
}

func main() {
	fmt.Println("gorm 执行 存储过程 :")
	dsn := "sqlserver://cuyan:123456@120.79.19.125:1433?database=cuyan"
	db, _ := gorm.Open(sqlserver.Open(dsn), &gorm.Config{})
	
	var students []Student

	// 原生 SQL 查询
	rows, _ := db.Raw("EXEC [dbo].[Go123] @name = N'z'").Rows()
	defer rows.Close()
	for rows.Next() {
		db.ScanRows(rows, &students)
		// 可写其他业务逻辑...
	}
	// 循环输出
	for _, v := range students {
		fmt.Println(v.Name)
	}
}

附 存储过程图片

存储过程代码(创建)
CREATE PROCEDURE [Go1234]
(@name nvarchar )
	-- Add the parameters for the stored procedure here
AS
BEGIN
	SELECt [Id]
      ,[Name]
      ,[Gender]
      ,[IsGraduate]
  FROM [cuyan].[dbo].[Student] where Name like '%'+@name+'%'
END

表结构 表结构图

表结构代码
USE [cuyan]
GO


SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[Student](
	[Id] [bigint] IDENTITY(1,1) NOT NULL,
	[Name] [nvarchar](100) NOT NULL,
	[Gender] [int] NULL,
	[IsGraduate] [bit] NULL,
 CONSTRAINT [PK_Student_1] PRIMARY KEY CLUSTERED 
(
	[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/908750.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号