草庐IT

动态sql

全部标签

sql - 使用 gorm 插入数据时,检查不存在相同

我正在使用gorm。我想在不存在相同值的情况下插入值就像原始sql一样。INSERTINTOstudent(firstname,lastname)SELECT'NEWFIRSTNAME','NEWLASTNAME'FROMDUALWHERENOTEXISTS(SELECT1FROMtable_nameWHEREfirstname='NEWFIRSTNAME'ANDlastname='NEWLASTNAME')LIMIT1;如何用gorm实现这个功能typeStudentstruct{FirstnamestringLastnamestring}funcinsert(){stu:=Stud

java - 如何使用 gorm 动态添加查询参数?

我是golang开发的新手。我有6个参数要使用gorm传递给查询。这是选择查询,因此,我们需要根据输入值过滤值。因此,我们需要将过滤器动态传递到查询中。我试过了,但没有解决方案。funcGetUsers(DB*gorm.DB,Offsetint,Limitint,Useruibackendmodels.UserDetails)(Users[]uibackendmodels.UserDetails,Err错误){query:="SELECTuserid,username,nickname,email,mobile,location,status,roleids,trsids,brandi

mongodb - 使用 mongo-go-driver 创建动态过滤器

我想用mongo-go-driver创建一个动态过滤器。例如,我有这个文档:{"_id":"5d1231380a2a2b39a99c3ed1"},"name":"flower.png","colors":["#ffffff","#212121","#999999","#dbdbdb","#ff5252"],},{"_id":"5d1231380a2a2b39a99c3ed0"},"name":"imageofgo.jpg","colors":["#dedede","#dfdfdf","#dddddd","#e0e0e0","#e2e2e2"],},{"_id":"5d1231380a2

json - 如何在 Go 中动态处理 JSON 响应中缺失的字段

我正在为API开发Go包装器,我注意到两个JSON字段在没有任何数据时保持为空。基本上,API会返回有关给定url的一组信息,如果至少访问过一次,则一切正常,我会得到一个完整的json,然后将其解码为一个结构:{"stats":{"status":1,"date":"09.07.2019","title":"Test","devices":{"dev":[{"tag":"Desktop"}],"sys":[{"tag":"GNU/Linux"},{"tag":"Windows10"}],"bro":[{"tag":"Firefox67.0"},{"tag":"Chrome62.0"}]

mysql - 如何处理 sql.ErrTxDone

例如,我正在尝试在我的mysql数据库中创建一条新记录。在sql.ErrTxDone的情况下,它的实际含义是什么,如果事务已提交,我应该怎么做? 最佳答案 如果交易处于无法再使用的状态,您会收到此错误。sql.Tx:AfteracalltoCommitorRollback,alloperationsonthetransactionfailwithErrTxDone.还有sql.ErrTxDone:ErrTxDoneisreturnedbyanyoperationthatisperformedonatransactionthathas

go - 如何在使用 Golang 和 gin-gonic 动态创建的 HTML 中渲染/显示图像

我正在生成QR代码,然后我需要在HTML中显示它们,而不是将它们保存为图像。到目前为止,我可以生成它们,但在HTML中呈现它们时遇到问题我这里有生成QR的golang代码和尝试呈现它们的HTML模板语言import("fmt""github.com/gin-gonic/gin"qrcode"github.com/skip2/go-qrcode")funcrenderQRExport(c*gin.Context){varimages[][]bytevarimg[]bytevarerrerrorfori:=0;iHTML模板QRexport{{template"imports.html"}

go - 基于拆分字符串和键值对生成动态嵌套映射

我正在尝试根据返回项目接口(interface)的API调用生成值映射。{}我真的不确定如何更好地解释它,但这是我的情况。我正在使用Vault来存储secret,这些secret将生成要在集群协调器中使用的动态映射。一个例子是:secret/集群secret/集群可以有无限嵌套的secret,例如secret/cluster/team1/secreta/secret/cluster/team2/secretb/app1/secret/cluster/globalsecret/cluster/team1/secreta将具有表示secret的键值对例如secret/cluster/tea

sql-server - 无法使用 'sa' 连接到远程 SQLServer

我正在尝试使用我正在编写的Go程序的连接字符串连接到SQLServer的远程实例。我有一个具有相同用户的远程数据库的本地版本。如果我使用这样的连接字符串连接到我的本地数据库,它工作得很好:DataSource=localhost;InitialCatalog=master;UserId=;Password=;现在,如果我使用相同的凭据,但我只是更改数据源,它也能正常工作:DataSource=;InitialCatalog=master;UserId=;Password=;现在,如果我尝试使用“sa”登录,它可以在本地运行,但不能远程运行。这很好用:DataSource=localho

mysql数据库在golang中报错【sql : database is closed】

我尝试在golang中设置mysql数据库。我为mysql设置创建了db.go并将其导入main.go。但是当我运行main.go时,由于db.go而发生错误。我想解决这个错误。没有编译错误。但是在运行gorunmain.go时,出现错误。主.gopackagemain//importfuncmain(){err:=godotenv.Load()iferr!=nil{}db:=db.NewDatabase(os.Getenv("MYSQL_USER"),os.Getenv("MYSQL_PASSWORD"),os.Getenv("MYSQL_HOST"))s3:=s3.NewS3(os

go - 使用 GO 和 gorilla mux 的动态路由查询

我正在使用gorillamux设置动态路由,这是routes.go代码typeRoutestruct{NamestringMethodstringPatternstringQueries[]stringHandlerFunchttp.HandlerFunc}typeRoutes[]Routevarvers=os.Getenv("API_VERSION")varbaseURL="/api/"+vers+"/"varauthRoutes=Routes{Route{"GetAllUsers","GET",baseURL+"users",[]string{"maxperpage","{maxp