草庐IT

DB_DRIVER

全部标签

mongodb - go.mongodb.org/mongo-driver - InsertOne with NilValueObjectId

我有以下结构typeAccountstruct{IDprimitive.ObjectID`json:"id"bson:"_id"`Emailstring`json:"email"`Passwordstring`json:"password"`}和下面的函数func(a*Account)Create()map[string]interface{}{ifresp,ok:=a.Validate();!ok{returnresp}hashedPassword,_:=bcrypt.GenerateFromPassword([]byte(a.Password),bcrypt.DefaultCost

mysql - 无法连接到 DB : database is closed

我有以下项目结构:-main.go-db--dbinit.go在dbinit.go中,我有以下代码:packagedbimport("database/sql"_"github.com/go-sql-driver/mysql")varDb*sql.DBvarerrerrorfuncinit(){Db,err=sql.Open("mysql","myDBCreds")deferDb.Close()}在main.go中我有:packagemainimport(db"./db")funcmain(){deferdb.Db.Close()sqlStatement:=`INSERTINTOtab

Mongodb unix 套接字与官方 mongo-go-driver 的连接?

找不到任何关于unix域套接字连接支持官方mongo-go-driver的信息。它是否得到官方实现和支持?“mongodb:///tmp/mongodb-27017.sock”uri不起作用。 最佳答案 Isitimplementedandsupportedofficially?使用官方MongoDBGodriver您可以直接连接到URI套接字。您只需要转义斜线即可。例如使用v1.1+:mongoURI:="mongodb://%2Ftmp%2Fmongodb-27017.sock"client,err:=mongo.NewClie

python - 是否可以将 Python GAE db.GeoPt 移植到 Go 类型?

我正在努力将最初用Python编写的现有GAE应用程序移植到Go。到目前为止,它非常棒而且相当简单(尽管它并非没有怪癖)。由于此端口将部署到不同版本的同一个GAE应用程序,因此这两个版本将共享同一个数据存储。问题在于原始Python应用程序广泛使用了db.GeoPt类型。我在我的一种类型上实现了自己的自定义PropertyLoadSaver,这样我就可以通过反射了解如何在Go中表示db.GeoPt。但显然db.GeoPt的内存布局与Go中的任何内容都不兼容。有人知道我会怎么做吗?以前有人这样做过吗?这里有一些代码可以让你们更好地了解我在做什么:func(sS*SomeStruct)Lo

mysql - Go:如何使用 sql/db 包从 mysql 检索多个结果

我正在尝试使用Go中的sql/db包从表中获取数据。我的数据库表包含一个用户名“shaw”。有几行用户名shaw在附加的帖子列中有不同的帖子。我有以下代码:开始:funcReadData()string{db,err:=sql.Open("mysql","user1@/my_db")iferr!=nil{fmt.Println(err)}deferdb.Close()vartweetstringrows,err:=db.Query("selecttweetfrompostswhereusername=?","shaw")iferr!=nil{fmt.Println(err)}defer

mongodb - 创建 ObjectId 与让 DB 创建它

我正在使用labixmgo模块作为GoMongo驱动程序。由于Go是并发的(和并行的),在应用程序中生成ObjectId是否安全,还是应该只由数据库来做?如果.Insert()可以返回Id,那将非常简单。但是当我需要它时,我有两种方法可以做到这一点:1)在客户端生成ObjectId并使用...user.ID=bson.NewObjectId()Users.Insert(user)//useuser.IDnormally2)让数据库生成Id并取回...Users.Insert(user)Users.Find(user).One(&user)//useruser.IDnormally第二种

go - docker 错误 : Volume specifies nonexistent driver inmemory

根据文档,dockervolumes有一个“inmemory”驱动程序:https://docs.docker.com/registry/storage-drivers/inmemory/Forpurelytestspurposes,youcanusetheinmemorystoragedriver.Thisdriverisanimplementationofthestoragedriver.StorageDriverinterfacewhichuseslocalmemoryforobjectstorage.但是当尝试像这样使用它时:volumes:ui-tmp-memory:driv

去建立错误 "db.GetUsers undefined (type *gorm.DB has no field or method GetUsers)"

我是golang的新手,正在尝试使用gin+gorm制作API服务器。我尝试构建下面的代码,但出现了type*gorm.DBhasnofieldormethodGetUsers错误。这是一个非常简单的API服务器,我只想从users表中获取所有用户。packagemodelsimport("github.com/jinzhu/gorm"_"github.com/jinzhu/gorm/dialects/postgres")vardb*gorm.DBfuncinit(){varerrerrordb,err=gorm.Open("postgres","host=localhostdbnam

Golang 构建错误 : cannot assign *sqlx. DB to *sql.DB

当我尝试构建我的项目时,它说:./main.go:140:cannotassign*sqlx.DBtodb.Conn(type*sql.DB)inmultipleassignment我在main.go中的导入:import("html/template""io/ioutil""net/http""regexp""./network""log""./config""./db""fmt""github.com/jmoiron/sqlx")我的db.go是:packagedbimport"database/sql"import_"github.com/go-sql-driver/mysql"

go - 如何为包含 DB conn 之类的应用程序包设置全局配置?

到目前为止,我已经在两个包中构建了我的应用程序-main和app在我的main()中,我启动我的服务器:funcmain(){router:=app.CreateRouter(app.Routes())log.Fatal(http.ListenAndServe(":8080",router))}在应用程序中,我有一个Config结构,它有一个方法connectToDB:typeConfigstruct{DB*sql.DB}func(c*Config)connectToDB(){connectionString:=fmt.Sprintf("user=%spassword=%sdbname