草庐IT

对数据库

全部标签

mysql - 使用golang在mysql中创建数据库

这个问题在这里已经有了答案:HowtocreateanewMySQLdatabasewithgo-sql-driver(3个答案)关闭7年前。我有一个代码,如果它们不存在,应该在mysql中自动创建数据库和表。如果我有数据库,我可以创建表,但我不能创建数据库,因为在连接字符串中我应该提供数据库名称。db,err:=sql.Open("mysql","user:pass@tcp(localhost:3306)/dbname?charset=utf8")用sql包可以吗?

mysql - 如何为使用 MySQL 数据库而不是内存存储的 OpenID 实现自己的接口(interface)

所以我尝试使用Golang的OpenID包,位于此处:https://github.com/yohcop/openid-go在_example中它说它在内存存储中用于存储nonce/discoverycache信息并且它不会释放内存并且我应该使用某种方式实现我自己的版本数据库。我选择的数据库是MySQL,我尝试实现我认为正确的(但不是,没有给我任何编译错误,但在运行时崩溃)我的DiscoveryCache.go是这样的:packageopenidimport("database/sql""log"//"time"_"github.com/go-sql-driver/mysql""git

database - 从数据库行在 Golang 中创建一个 map

基本上在执行查询后,我想获取结果行并生成一个[]map[string]interface{},但我不知道如何使用API执行此操作,因为Rows.Scan()函数需要特定数量的参数来匹配请求的列数(可能还有类型)才能正确获取数据。同样,我想概括此调用并进行任何查询并将其转换为[]map[string]interface{},其中映射包含映射到值的列名那一行。这可能效率很低,我计划稍后更改结构,使interface{}成为单个数据点的结构。我如何仅使用database/sql包或在必要时使用database/sql/driver包来执行此操作? 最佳答案

sql - 将数据库初始化为全局变量

将数据库初始化为全局变量是个好主意吗?能行吗?我正在考虑类似的事情:funcMustDB(d*sql.DB,errerror)*sql.DB{iferr!=nil{log.Panic(err)}returnd}//whatIdon'tknow-ishowtocalldb.Close()//usernameandpasswordcanalsobereadsimilarwayvardb*DB=MustDB(db.Open(...))funcMustPrepare(db*sql.DB,querystring)*sql.Stmt{res,err:=sql.Prepare(db,query)if

go - 比较数据库更新的分隔文件

关于可能对此有帮助的包(或方法)的任何建议?我需要获取我们每周收到的大约40MB的文件,并确定从上一个文件到当前文件发生了什么变化。无论这些更改是什么,都需要对一个简单的数据库表进行。在以前的生活中,我通过带有-Hae参数的Linux“diff”完成了类似的工作,从而产生了一个“ed脚本”。内容随后由PERL程序处理,使用Tie::File引用先前文件中的更改记录。为了加强我的围棋技能,我正在尝试将其用于当前的任务。https://github.com/sergi/go-diff看起来它可能是门票,但我不确定“补丁”输出是否会(轻松)完全满足我的需要。固定宽度和/或带分隔符的文本文件仍

postgresql - 如何设计数据库服务类

我想创建一个采用sql连接的类,然后我可以编写方法从我的数据库返回数据。funcmain(){db:=dbConnect()deferdb.Close()//passthedbtomydbservice.gosomehow?}然后在我的处理程序中(对于网络应用程序)我希望能够做到:varuserKey,err:=dbService.getUserKey(123)我是否只创建一个类似dbservice.go的文件,然后创建代表我的返回值的结构,然后执行:func(mystruct*MyStruct)GetUserKey(idint64)(keystring,errerror){//}此外

go - 数据无法保存在我的数据库中

我有自己的网站,它可以写点东西。然后我的服务可以获取这些数据并保存在我的数据库中,但它对我不起作用。我尝试了一些步骤,似乎可以将字符串传输到dab(),但它无法在我的数据库中保存任何内容。错误日志:2016/05/1408:02:08http:panicserving14.146.246.141:64540:sql:convertingargument#0'stype:unsupportedtype[]string,aslicegoroutine5[running]:net/http.(*conn).serve.func1(0xc8200b4f20,0x7f8b9f86c6c8,0xc

go - 在 Golang 结构中分配数据库列

我在数据库中有两个表,例如Retailers和products。零售商有很多产品。它们后面是我在golang中定义的结构。typeRetailersstruct{IdintNamestringProducts[]Product}typeProductstruct{IdintDescriptionstringUrlstring}以下是我用来从数据库中获取数据的查询。selectr.id,r.name,p.id,p.description,p.urlfromretailersrJOINproductsonr.id=r.retailer_id使用上面的结构和查询,我希望形成如下所示的json

database - Postgres-Golang-模式与数据库?

我正在为我的应用程序使用golang和Postgres。在我的应用程序中,对于新用户,我正在为该用户创建新的数据库和表。因此,对于每个新客户,我正在创建新的数据库。在我的应用程序中处理时,我将建立太多连接来连接特定的用户数据库。这是目前正在做的。我的问题是,我是否必须为新用户而不是postgres中的数据库创建模式,以减少连接。在这种情况下,只在数据库下创建一个数据库,将创建过多的模式。这是否是最好的方法。 最佳答案 如果每个客户的架构不同,那么您应该使用基于事件的数据存储,而不是为每个字段创建列,而是创建行。本例中的每一行都包含4

mysql - 我需要有关使用 mysql 作为数据库的 Golang Web 应用程序的帮助

我是Golang的新手,一直在学习一些教程,我想将所学知识付诸实践来创建一个网站这是main.go文件packagemainimport("html/template""net/http""log""database/sql"_"github.com/go-sql-driver/mysql")//Fetchalltemplatesvartemplates,templatesErr=template.ParseGlob("templates/*")funcmain(){PORT:=":9000"log.Println("Listeningtoport",PORT)http.HandleF